import { MatrixType, AreaType, ZoneType, RangeType, PointType, Y, X, CellsByAddressType, ShapeType, MatricesByAddress, CellType } from "../types"; export declare const slideArea: (area: AreaType, y: Y, x: X) => AreaType; export declare const superposeArea: (srcArea: AreaType, dstArea: AreaType) => ShapeType; export declare const concatAreas: (area1: AreaType, area2: AreaType) => AreaType; export declare const zoneToArea: (zone: ZoneType) => AreaType; export declare const areaToZone: (area: AreaType) => ZoneType; export declare const areaToRange: (area: AreaType) => string; export declare const rangeToArea: (range: string) => AreaType; export declare const between: (range: RangeType, index: number) => boolean; export declare const among: (area: AreaType, point: PointType) => boolean; declare type ShapeExtension = { base?: number; }; export declare const zoneShape: ({ base, ...zone }: ZoneType & ShapeExtension) => ShapeType; export declare const areaShape: ({ base, ...area }: AreaType & ShapeExtension) => ShapeType; export declare const matrixShape: ({ base, matrix, }: { matrix: MatrixType; } & ShapeExtension) => ShapeType; export declare const makeSequence: (start: number, stop: number, step?: number) => number[]; export declare const oa2aa: (oa: { [s: string]: any; }[], fields: string[]) => MatrixType; export declare const aa2oa: (aa: MatrixType, fields: string[]) => { [s: string]: any; }; export declare const putMatrix: (dst: T[][], src: T[][], dstArea: AreaType) => MatricesByAddress; export declare const createMatrix: (numRows: number, numCols: number, fill?: T | undefined) => T[][]; export declare const cropMatrix: (matrix: T[][], area: AreaType) => T[][]; export declare const generateInitialSimple: ({ cells, ensured, matrix, flattenAs, }: { cells?: CellsByAddressType | undefined; ensured?: { numRows?: number | undefined; numCols?: number | undefined; } | undefined; flattenAs?: keyof CellType | undefined; matrix?: MatrixType | undefined; }) => CellsByAddressType; export declare const generateInitial: ({ cells, ensured, matrices, flattenAs, }?: { cells?: CellsByAddressType | undefined; ensured?: { numRows?: number | undefined; numCols?: number | undefined; } | undefined; flattenAs?: keyof CellType | undefined; matrices?: MatricesByAddress | undefined; }) => CellsByAddressType; export declare const upsert: ({ cells, matrices, flattenAs, }: { cells?: CellsByAddressType | undefined; flattenAs?: keyof CellType | undefined; matrices?: MatricesByAddress | undefined; }) => CellsByAddressType; export declare const getMaxSizesFromCells: (cells?: CellsByAddressType) => { numRows: number; numCols: number; }; export declare const range: (start: number, end: number) => number[]; export declare const complementSelectingArea: (selectingArea: AreaType, choosing: PointType) => AreaType; export declare const isSameArea: (area1: AreaType, area2: AreaType) => boolean; export {}; //# sourceMappingURL=structs.d.ts.map