UNPKG

marga

Version:
45 lines (44 loc) 1.61 kB
import Entity from '../../entity/Entity'; import IEntity from '../../entity/IEntity'; import Streak from '../../streak/Streak'; import BeadRoad from '../bead/BeadRoad'; import IStreakRoad from '../IStreakRoad'; import BigEntity from './BigEntity'; /** * The Big Road is a streak road that records the results of the game. */ declare class BigRoad implements IStreakRoad { /** * Form a new BigRoad from a beadRoad object (which is a collection of bead entities). * @param {BeadRoad} beadRoad * @return {BigRoad} The new BigRoad */ static from(beadRoad: BeadRoad): BigRoad; private _length; private _entityIndex; private _firstStreak; private _lastStreak; private readonly _shoeIndex; private _setLastStreak; private _setFirstStreak; constructor(index: number); print(): string[] | string[][]; getSize(): number; /** * Add entity to the Big Road. * @param {BigEntity} entity * @return {boolean} If the entity is added successfully, return true, otherwise return false. */ addEntity(entity: BigEntity): boolean; getFirstStreak(): Streak | undefined; getLastStreak(): Streak | undefined; getFirstEntity(): Entity | undefined; getLastEntity(): IEntity | undefined; getShoeIndex(): number; /** * Get a generator that can iterate the Pingpong pattern in the Big Road. * @return {Generator<BigEntity[], void, boolean>} A generator that can iterate the Pingpong pattern in the Big Road. */ getPingpongIterator(): Generator<BigEntity[], void, boolean>; } export default BigRoad;