@haelp/teto
Version:
A typescript-based controllable TETR.IO client.
14 lines • 913 B
TypeScript
import type { Engine, Mino } from "../../../engine";
import type * as Messages from "../types/messages";
export declare abstract class Adapter<T extends Messages.CustomMessageData = Messages.CustomMessageData> {
abstract initialize(): Promise<Messages.Incoming.Info<T>>;
protected configFromEngine(engine: Engine): Omit<Messages.Outgoing.Config<T>, "type" | "data">;
protected stateFromEngine(engine: Engine): Omit<Messages.Outgoing.State<T>, "type" | "data">;
protected playFromEngine(engine: Engine): Omit<Messages.Outgoing.Play<T>, "type" | "data">;
abstract config(engine: Engine, data?: T["config"]): void;
abstract update(engine: Engine, data?: T["state"]): void;
abstract addPieces(pieces: Mino[], data?: T["pieces"]): void;
abstract play(engine: Engine, data?: T["play"]): Promise<Messages.Incoming.Move<T>>;
abstract stop(): void;
}
//# sourceMappingURL=index.d.ts.map