import { ResourceUsageScale, ResourceUsageCellPayload, ResourceUsageCellData, ResourceUsageTaskDetailClickPayload } from '../../models/types/ResourceUsageTypes';
import { Resource } from '../../models/classes/Resource';
import { ResourceListConfig } from '../../models/configs/ResourceListConfig';
import { TimelineScale, TimelineScaleConfig } from '../../models/types/TimelineScale';
interface Props {
    resources: Resource[];
    scale?: ResourceUsageScale;
    defaultScale?: ResourceUsageScale;
    dateRange?: {
        start: Date;
        end: Date;
    };
    resourceListConfig?: ResourceListConfig;
    /** TaskList 列渲染模式：'default' 使用 resourceListConfig.columns 配置，'declarative' 使用默认插槽中的 TaskListColumn 声明式列 */
    columnRenderMode?: 'default' | 'declarative';
    /**
     * 表头格式配置（v1.13.0），与 GanttChart 传给 Timeline 的 scaleConfigs 同构（Record<TimelineScale, TimelineScaleConfig>），
     * 未提供时回退到与 Timeline 一致的内置默认值 SCALE_CONFIGS，确保任务/资源/资源利用率视图的表头格式逻辑保持一致。
     * 仅使用 day/week/month 三个刻度的 formatters（primary 用于第一行年/月分组，secondary 用于第二行具体周期标签）。
     */
    scaleConfigs?: Record<TimelineScale, TimelineScaleConfig>;
    overloadThreshold?: number;
    underloadThreshold?: number;
    /** 超载单元格背景色，未提供时使用主题默认色 */
    overloadColor?: string;
    /** 正常单元格背景色，未提供时使用主题默认色 */
    normalColor?: string;
    /** 欠载单元格背景色，未提供时使用主题默认色 */
    underloadColor?: string;
    /** 周末列背景色，未提供时使用主题默认色（仅 scale === 'day' 生效） */
    weekendColor?: string;
    /** 行高（px），左右两侧面板共用，默认 40 */
    rowHeight?: number;
    /** 单元格列宽（px），未提供时按 scale 使用默认值（day: 56 / week: 80 / month: 100） */
    columnWidth?: number;
    disabled?: boolean;
    onBeforeScaleChange?: (next: ResourceUsageScale, prev: ResourceUsageScale) => boolean | Promise<boolean>;
    onCellClick?: (payload: ResourceUsageCellPayload) => void;
    /** v1.13.0 点击工时单元格 Tooltip 明细中的某个任务时触发（P1 待办 T7.4） */
    onTaskDetailClick?: (payload: ResourceUsageTaskDetailClickPayload) => void;
}
declare var __VLS_6: {};
type __VLS_Slots = {} & {
    default?: (props: typeof __VLS_6) => any;
};
declare const __VLS_component: import('vue').DefineComponent<Props, {
    refreshAggregation: () => void;
    setScale: (scale: ResourceUsageScale) => void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "task-detail-click": (payload: ResourceUsageTaskDetailClickPayload) => any;
    "scale-change": (payload: {
        next: ResourceUsageScale;
        prev: ResourceUsageScale;
    }) => any;
    "cell-click": (payload: ResourceUsageCellPayload) => any;
    "cell-hover": (payload: ResourceUsageCellPayload | null) => any;
    "overload-detected": (payload: {
        resourceId: string | number;
        periods: ResourceUsageCellData[];
    }) => any;
}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
    "onTask-detail-click"?: ((payload: ResourceUsageTaskDetailClickPayload) => any) | undefined;
    "onScale-change"?: ((payload: {
        next: ResourceUsageScale;
        prev: ResourceUsageScale;
    }) => any) | undefined;
    "onCell-click"?: ((payload: ResourceUsageCellPayload) => any) | undefined;
    "onCell-hover"?: ((payload: ResourceUsageCellPayload | null) => any) | undefined;
    "onOverload-detected"?: ((payload: {
        resourceId: string | number;
        periods: ResourceUsageCellData[];
    }) => any) | undefined;
}>, {
    disabled: boolean;
    rowHeight: number;
    defaultScale: ResourceUsageScale;
    overloadThreshold: number;
    underloadThreshold: number;
    columnRenderMode: "default" | "declarative";
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
