import { ExtractPropTypes, PropType, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { CustomSlotsType, VueNode } from '../_util/type';
import { VueTypeValidableDef } from 'vue-types';
export interface Route {
    path: string;
    breadcrumbName: string;
    children?: Omit<Route, 'children'>[];
}
export declare const breadcrumbProps: () => {
    prefixCls: StringConstructor;
    routes: {
        type: PropType<Route[]>;
    };
    params: VueTypeValidableDef<any>;
    separator: VueTypeValidableDef<any>;
    itemRender: {
        type: PropType<(opt: {
            route: Route;
            params: unknown;
            routes: Route[];
            paths: string[];
        }) => VueNode>;
    };
};
export type BreadcrumbProps = Partial<ExtractPropTypes<ReturnType<typeof breadcrumbProps>>>;
declare const _default: DefineComponent<ExtractPropTypes<{
    prefixCls: StringConstructor;
    routes: {
        type: PropType<Route[]>;
    };
    params: VueTypeValidableDef<any>;
    separator: VueTypeValidableDef<any>;
    itemRender: {
        type: PropType<(opt: {
            route: Route;
            params: unknown;
            routes: Route[];
            paths: string[];
        }) => VueNode>;
    };
}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ExtractPropTypes<{
    prefixCls: StringConstructor;
    routes: {
        type: PropType<Route[]>;
    };
    params: VueTypeValidableDef<any>;
    separator: VueTypeValidableDef<any>;
    itemRender: {
        type: PropType<(opt: {
            route: Route;
            params: unknown;
            routes: Route[];
            paths: string[];
        }) => VueNode>;
    };
}>> & Readonly<{}>, {}, CustomSlotsType<{
    separator: any;
    itemRender: {
        route: Route;
        params: any;
        routes: Route[];
        paths: string[];
    };
    default: any;
}>, {}, {}, string, ComponentProvideOptions, true, {}, any>;
export default _default;
