import type { DimensionSettingsState, PositionItem, ViewSettingSizeProp } from "../../types/index";
export type DimensionPosition = Pick<DimensionSettingsState, 'indexes' | 'positionIndexes' | 'originItemSize' | 'positionIndexToItem'>;
export type DimensionIndexInput = Pick<DimensionSettingsState, 'indexes' | 'originItemSize' | 'indexToItem'>;
export type DimensionSize = Pick<DimensionSettingsState, 'indexes' | 'positionIndexes' | 'positionIndexToItem' | 'indexToItem' | 'realSize' | 'sizes'>;
/**
 * Pre-calculation
 * Dimension custom sizes for each cell
 * Keeps only changed sizes, skips origin size
 */
export declare function calculateDimensionData(originItemSize: number, newSizes?: ViewSettingSizeProp): {
    indexes: number[];
    positionIndexes: number[];
    positionIndexToItem: {
        [position: number]: PositionItem;
    };
    indexToItem: {
        [index: number]: PositionItem;
    };
};
/**
 * Calculate item by position
 */
export declare const getItemByPosition: ({ indexes, positionIndexes, originItemSize, positionIndexToItem, }: Pick<DimensionPosition, "indexes" | "positionIndexes" | "originItemSize" | "positionIndexToItem">, pos: number) => PositionItem;
export declare function getItemByIndex(dimension: Pick<DimensionIndexInput, 'indexToItem' | 'indexes' | 'originItemSize'>, index: number): PositionItem;
