import { CSSProperties, ExtractPropTypes, PropType, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { VueTypeValidableDef, VueTypeDef } from 'vue-types';
export type CollapseType = 'clickTrigger' | 'responsive';
export declare const siderProps: () => {
    prefixCls: StringConstructor;
    collapsible: {
        type: BooleanConstructor;
        default: undefined;
    };
    collapsed: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultCollapsed: {
        type: BooleanConstructor;
        default: undefined;
    };
    reverseArrow: {
        type: BooleanConstructor;
        default: undefined;
    };
    zeroWidthTriggerStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    trigger: VueTypeValidableDef<any>;
    width: VueTypeDef<string | number>;
    collapsedWidth: VueTypeDef<string | number>;
    breakpoint: VueTypeDef<string>;
    theme: VueTypeDef<string> & {
        default: string;
    };
    onBreakpoint: PropType<(broken: boolean) => void>;
    onCollapse: PropType<(collapsed: boolean, type: CollapseType) => void>;
};
export type SiderProps = Partial<ExtractPropTypes<ReturnType<typeof siderProps>>>;
export interface SiderContextProps {
    sCollapsed?: boolean;
    collapsedWidth?: string | number;
}
declare const _default: DefineComponent<ExtractPropTypes<{
    prefixCls: StringConstructor;
    collapsible: {
        type: BooleanConstructor;
        default: undefined;
    };
    collapsed: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultCollapsed: {
        type: BooleanConstructor;
        default: undefined;
    };
    reverseArrow: {
        type: BooleanConstructor;
        default: undefined;
    };
    zeroWidthTriggerStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    trigger: VueTypeValidableDef<any>;
    width: VueTypeDef<string | number>;
    collapsedWidth: VueTypeDef<string | number>;
    breakpoint: VueTypeDef<string>;
    theme: VueTypeDef<string> & {
        default: string;
    };
    onBreakpoint: PropType<(broken: boolean) => void>;
    onCollapse: PropType<(collapsed: boolean, type: CollapseType) => void>;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("collapse" | "breakpoint" | "update:collapsed")[], "collapse" | "breakpoint" | "update:collapsed", PublicProps, Readonly<ExtractPropTypes<{
    prefixCls: StringConstructor;
    collapsible: {
        type: BooleanConstructor;
        default: undefined;
    };
    collapsed: {
        type: BooleanConstructor;
        default: undefined;
    };
    defaultCollapsed: {
        type: BooleanConstructor;
        default: undefined;
    };
    reverseArrow: {
        type: BooleanConstructor;
        default: undefined;
    };
    zeroWidthTriggerStyle: {
        type: PropType<CSSProperties>;
        default: CSSProperties;
    };
    trigger: VueTypeValidableDef<any>;
    width: VueTypeDef<string | number>;
    collapsedWidth: VueTypeDef<string | number>;
    breakpoint: VueTypeDef<string>;
    theme: VueTypeDef<string> & {
        default: string;
    };
    onBreakpoint: PropType<(broken: boolean) => void>;
    onCollapse: PropType<(collapsed: boolean, type: CollapseType) => void>;
}>> & Readonly<{
    onBreakpoint?: ((...args: any[]) => any) | undefined;
    onCollapse?: ((...args: any[]) => any) | undefined;
    "onUpdate:collapsed"?: ((...args: any[]) => any) | undefined;
}>, {
    theme: string;
    collapsible: boolean;
    collapsed: boolean;
    defaultCollapsed: boolean;
    reverseArrow: boolean;
    zeroWidthTriggerStyle: CSSProperties;
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
export default _default;
