/// import { Schema } from "@colyseus/schema"; import type { State } from "../state/state.js"; import { ChildTrait } from "../traits/child.js"; import { Entity } from "../traits/entity.js"; import { IdentityTrait } from "../traits/identity.js"; import { LabelTrait } from "../traits/label.js"; import { LocationTrait } from "../traits/location.js"; import { OwnershipTrait } from "../traits/ownership.js"; import { ParentTrait } from "../traits/parent.js"; declare class TopDeckElement extends Schema { } interface TopDeckElement { [key: string]: any; } /** * Deck of cards, or stack of any entities. * * Only the topmost entity can be visible in this container, via `topDeck` property. * * @category Entity */ export declare class Deck extends Entity { /** * Number of child elements synchronized to the client. * @category Deck */ childCount: number; /** * @category Deck */ topDeck: TopDeckElement; create(state: State, options?: DeckOptions): void; updateTopElement(child: { [key: string]: any; }): void; } interface Mixin extends IdentityTrait, LocationTrait, ChildTrait, ParentTrait, LabelTrait, OwnershipTrait { } type DeckOptions = Partial & { childCount: number; }>; export interface Deck extends Mixin { } export {};