import { ExtractPropTypes, Plugin, PropType, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { CustomSlotsType, VueNode } from '../_util/type';
import { default as noFound } from './noFound';
import { default as serverError } from './serverError';
import { default as unauthorized } from './unauthorized';
import { CheckCircleFilledIconType } from '@ant-design/icons-vue/lib/icons/CheckCircleFilled';
import { CloseCircleFilledIconType } from '@ant-design/icons-vue/lib/icons/CloseCircleFilled';
import { ExclamationCircleFilledIconType } from '@ant-design/icons-vue/lib/icons/ExclamationCircleFilled';
import { WarningFilledIconType } from '@ant-design/icons-vue/lib/icons/WarningFilled';
import { VueTypeValidableDef } from 'vue-types';
export declare const IconMap: {
    success: CheckCircleFilledIconType;
    error: CloseCircleFilledIconType;
    info: ExclamationCircleFilledIconType;
    warning: WarningFilledIconType;
};
export declare const ExceptionMap: {
    '404': () => import("vue/jsx-runtime").JSX.Element;
    '500': () => import("vue/jsx-runtime").JSX.Element;
    '403': () => import("vue/jsx-runtime").JSX.Element;
};
export type ExceptionStatusType = 403 | 404 | 500 | '403' | '404' | '500';
export type ResultStatusType = ExceptionStatusType | keyof typeof IconMap;
export declare const resultProps: () => {
    prefixCls: StringConstructor;
    icon: VueTypeValidableDef<any>;
    status: {
        type: PropType<ResultStatusType>;
        default: string;
    };
    title: VueTypeValidableDef<any>;
    subTitle: VueTypeValidableDef<any>;
    extra: VueTypeValidableDef<any>;
};
export type ResultProps = Partial<ExtractPropTypes<ReturnType<typeof resultProps>>>;
declare const Result: DefineComponent<ExtractPropTypes<{
    prefixCls: StringConstructor;
    icon: VueTypeValidableDef<any>;
    status: {
        type: PropType<ResultStatusType>;
        default: string;
    };
    title: VueTypeValidableDef<any>;
    subTitle: VueTypeValidableDef<any>;
    extra: VueTypeValidableDef<any>;
}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ExtractPropTypes<{
    prefixCls: StringConstructor;
    icon: VueTypeValidableDef<any>;
    status: {
        type: PropType<ResultStatusType>;
        default: string;
    };
    title: VueTypeValidableDef<any>;
    subTitle: VueTypeValidableDef<any>;
    extra: VueTypeValidableDef<any>;
}>> & Readonly<{}>, {
    status: ResultStatusType;
}, CustomSlotsType<{
    title?: any;
    subTitle?: any;
    icon?: any;
    extra?: any;
    default?: any;
}>, {}, {}, string, ComponentProvideOptions, true, {}, any>;
declare const _default: typeof Result & Plugin & {
    readonly PRESENTED_IMAGE_403: typeof unauthorized;
    readonly PRESENTED_IMAGE_404: typeof noFound;
    readonly PRESENTED_IMAGE_500: typeof serverError;
};
export default _default;
