import type { PointLike } from '@antv/g';
import type { LayoutResult, SortParam } from '../../common/interface';
import type { SpreadSheet } from '../../sheet-type';
import type { Node } from '../layout/node';
/**
 * Base header config interface
 */
export interface BaseHeaderConfig {
    scrollX?: number;
    scrollY?: number;
    width: number;
    height: number;
    originalWidth?: number;
    originalHeight?: number;
    viewportWidth: number;
    viewportHeight: number;
    position: PointLike;
    nodes: Node[];
    spreadsheet: SpreadSheet;
    sortParam?: SortParam;
    shallowRender?: boolean;
}
export interface ColHeaderConfig extends BaseHeaderConfig {
    cornerWidth?: number;
}
export interface CornerHeaderConfig extends BaseHeaderConfig {
    seriesNumberWidth: number;
}
export interface BaseCornerOptions {
    seriesNumberWidth: number;
    layoutResult: LayoutResult;
    spreadsheet: SpreadSheet;
}
export type RowHeaderConfig = BaseHeaderConfig;
