import { Store, StoreContainer } from '../shared/interface'; import { HiddenObjectsState } from '../shared/hiddenObjectsStore'; import { ClientRandomGenerator } from './clientRandom'; import { BaseClient } from './baseClient'; import { Signal } from 'typed-signals'; import { GameOptions, StandardGameAction } from '../shared/standardActions'; import { IBaseComponentClient, IDisposableClient, IGameRoomClient } from './interface'; export declare class BaseComponentClient extends BaseClient implements IDisposableClient, IBaseComponentClient { store: Store; container: StoreContainer; hiddenObjectsStore: Store>; protected gameId: number; constructor(container: StoreContainer, type: string, client: IGameRoomClient); initialize(): Promise; deinitialize(): void; sendAction(action: Action | StandardGameAction): Promise; isDestroyed(): boolean; protected state(): Data; protected hiddenState(): HiddenObjectsState; getState(): Promise; restartGame(options: GameOptions): Promise; protected onAction(_action: Action | StandardGameAction): void; hasState: boolean; deinitialized: boolean; type: string; random: ClientRandomGenerator; onAfterAction: Signal<(arg: Action | StandardGameAction) => void>; }