This repository has been archived on 2024-07-02. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
ts-interfaces/client/containers.ts
T
2024-05-26 15:21:54 +02:00

47 lines
1.3 KiB
TypeScript

import { ContainerVisibility, IContainer, IFireGemsStack, IInteractibleContainer, IMarket, IMarketStack, IPlayableContainer, IPlayerBoard, IPlayerDiscard, IPlayerHand, IPlayerStack } from "../generic/containers.js"
import { IGameObject, ICard, IPlayer, IGame } from "../generic/index.js"
export interface ICContainer<T> extends IContainer<T> {
onCardsAppend: (cards: Array<ICard>) => void
onDraw: (cards: Array<ICard>) => void
onRemoveCards: (cards: Array<ICard>) => void
onShuffle: () => void
}
export interface ICInteractibleContainer extends IInteractibleContainer {
onSacrifice: (card: ICard) => void
}
export interface ICPlayableContainer extends IPlayableContainer {
onDiscard: (card: ICard) => void
}
export interface ICMarketStack extends IMarketStack {
}
export interface ICMarket extends IMarket {
onBuy: (card: ICard) => void
onBuyInHand: (card: ICard) => void
onBuyInStack: (card: ICard) => void
}
export interface ICFireGemsStack extends IFireGemsStack {
}
export interface ICPlayerStack extends IPlayerStack {
}
export interface ICPlayerDiscard extends IPlayerDiscard {
onPutOnStack: (card: ICard) => void
}
export interface ICPlayerHand extends IPlayerHand {
onPutAllOnBoard: () => void
}
export interface ICPlayerBoard extends IPlayerBoard {
onStunChampion: (card: ICard) => void
}