UNPKG

@haelp/teto

Version:

A typescript-based controllable TETR.IO client.

77 lines 2.24 kB
import { type BoardSquare } from "../../board"; import { Mino } from "../../queue/types"; import { type KickTable } from "../kicks"; import type { Rotation } from "./types"; export interface TetrominoInitializeParams { symbol: Mino; initialRotation: Rotation; boardHeight: number; boardWidth: number; from?: Tetromino | TetrominoSnapshot; } export interface TetrominoSnapshot { symbol: Mino; location: [number, number]; locking: number; lockResets: number; rotResets: number; safeLock: number; highestY: number; rotation: Rotation; fallingRotations: number; totalRotations: number; irs: number; ihs: boolean; aox: number; aoy: number; keys: number; } export declare class Tetromino { #private; symbol: Mino; states: [number, number][][]; location: [number, number]; locking: number; lockResets: number; rotResets: number; safeLock: number; highestY: number; fallingRotations: number; totalRotations: number; irs: number; ihs: boolean; aox: number; aoy: number; keys: number; constructor(options: TetrominoInitializeParams); get blocks(): [number, number][]; get absoluteBlocks(): [number, number][]; absoluteAt({ x, y, rotation }: { x?: number; y?: number; rotation?: number; }): [number, number][]; get rotation(): Rotation; set rotation(value: number); get x(): number; set x(value: number); get y(): number; set y(value: number); isStupidSpinPosition(board: BoardSquare[][]): boolean; isAllSpinPosition(board: BoardSquare[][]): boolean; rotate(board: BoardSquare[][], kickTable: KickTable, amt: Rotation, maxMovement: boolean): boolean | { kick: [number, number]; newLocation: [number, number]; id: string; index: number; }; moveRight(board: BoardSquare[][]): boolean; moveLeft(board: BoardSquare[][]): boolean; dasRight(board: BoardSquare[][]): boolean; dasLeft(board: BoardSquare[][]): boolean; softDrop(board: BoardSquare[][]): boolean; snapshot(): TetrominoSnapshot; } export * from "./data"; export * from "./types"; //# sourceMappingURL=index.d.ts.map