import { Piece } from "./piece"; import { SquareIndex } from "./square"; import { IMove } from "./move"; import { BoardPosition } from "./boardPosition"; import { Colour } from "./colour"; interface ILineMoveGenerator { generateMoves(boardPosition: BoardPosition, piece: Piece, index: SquareIndex, posX: number, posY: number, offsetX: number, offsetY: number, colour: Colour, moveList: Array): void; generateBishopLikeMoves(boardPosition: BoardPosition, piece: Piece, colour: Colour, index: SquareIndex, posX: number, posY: number, moveList: Array): void; generateRookLikeMoves(boardPosition: BoardPosition, piece: Piece, colour: Colour, index: SquareIndex, posX: number, posY: number, moveList: Array): void; generateUsingOffsets(boardPosition: BoardPosition, piece: Piece, colour: Colour, index: SquareIndex, posX: number, posY: number, offsets: Array, moveList: Array): void; } type Offsets = { x: number; y: number; }; export declare const LineMoveGenerator: ILineMoveGenerator; export {};