import { ToolbarConfig } from '../models/configs/ToolbarConfig';
import { TimelineScale } from '../models/types/TimelineScale';
type Language = 'zh' | 'en';
export type GanttViewMode = 'task' | 'resource' | 'calendar' | 'resource-usage';
interface Props {
    config?: ToolbarConfig;
    timeScale?: TimelineScale;
    theme?: 'light' | 'dark';
    fullscreen?: boolean;
    expandAll?: boolean;
    viewMode?: GanttViewMode;
    availableViewModes?: GanttViewMode[];
    onAddTask?: () => void;
    onAddMilestone?: () => void;
    onTodayLocate?: () => void;
    onExportCsv?: () => void;
    onExportPdf?: () => void;
    onLanguageChange?: (lang: 'zh-CN' | 'en-US') => void;
    onThemeChange?: (isDark: boolean) => void;
    onFullscreenChange?: (isFullscreen: boolean) => void;
    onTimeScaleChange?: (scale: TimelineScale) => void;
    onExpandAll?: () => void;
    onCollapseAll?: () => void;
    onViewModeChange?: (mode: GanttViewMode) => void;
    onSettingsConfirm?: (type: 'theme' | 'language', value: string | boolean | Language) => Promise<boolean> | boolean;
}
declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "add-task": () => any;
    "add-milestone": () => any;
    "today-locate": () => any;
    "export-csv": () => any;
    "export-pdf": () => any;
    "language-change": (lang: "zh-CN" | "en-US") => any;
    "theme-change": (isDark: boolean) => any;
    "fullscreen-change": (isFullscreen: boolean) => any;
    "time-scale-change": (scale: TimelineScale) => any;
    "expand-all": () => any;
    "collapse-all": () => any;
    "view-mode-change": (mode: GanttViewMode) => any;
}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
    "onAdd-task"?: (() => any) | undefined;
    "onAdd-milestone"?: (() => any) | undefined;
    "onToday-locate"?: (() => any) | undefined;
    "onExport-csv"?: (() => any) | undefined;
    "onExport-pdf"?: (() => any) | undefined;
    "onLanguage-change"?: ((lang: "zh-CN" | "en-US") => any) | undefined;
    "onTheme-change"?: ((isDark: boolean) => any) | undefined;
    "onFullscreen-change"?: ((isFullscreen: boolean) => any) | undefined;
    "onTime-scale-change"?: ((scale: TimelineScale) => any) | undefined;
    "onExpand-all"?: (() => any) | undefined;
    "onCollapse-all"?: (() => any) | undefined;
    "onView-mode-change"?: ((mode: GanttViewMode) => any) | undefined;
}>, {
    expandAll: boolean;
    fullscreen: boolean;
    viewMode: GanttViewMode;
    config: ToolbarConfig;
    timeScale: TimelineScale;
    theme: "light" | "dark";
    availableViewModes: GanttViewMode[];
    onAddTask: () => void;
    onAddMilestone: () => void;
    onTodayLocate: () => void;
    onExportCsv: () => void;
    onExportPdf: () => void;
    onLanguageChange: (lang: "zh-CN" | "en-US") => void;
    onThemeChange: (isDark: boolean) => void;
    onFullscreenChange: (isFullscreen: boolean) => void;
    onTimeScaleChange: (scale: TimelineScale) => void;
    onExpandAll: () => void;
    onCollapseAll: () => void;
    onViewModeChange: (mode: GanttViewMode) => void;
    onSettingsConfirm: (type: "theme" | "language", value: string | boolean | Language) => Promise<boolean> | boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
export default _default;
