import { PropType } from 'vue';
import { HttpRequest } from '@zyui/utils';

export interface RequestConfig {
    formatResult?: (response: any) => unknown;
    middleware?: (http: any) => unknown;
}
export interface CssConfig {
    /**
     * 额外的CSS链接
     */
    links?: string[];
    /**
     * 内联CSS样式
     */
    styles?: string[];
}
export interface ConfigProviderContext {
    http?: HttpRequest;
    requestConfig?: RequestConfig;
    cssConfig?: CssConfig;
}
export declare const configProviderContextKey: unique symbol;
export declare const ConfigProvider: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    /**
     * 请求配置
     */
    http: {
        type: PropType<HttpRequest>;
        required: false;
    };
    /**
     * 请求配置
     */
    requestConfig: {
        type: PropType<RequestConfig>;
        required: false;
    };
    /**
     * CSS配置
     */
    cssConfig: {
        type: PropType<CssConfig>;
        required: false;
    };
}>, () => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
    [key: string]: any;
}>[] | undefined, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    /**
     * 请求配置
     */
    http: {
        type: PropType<HttpRequest>;
        required: false;
    };
    /**
     * 请求配置
     */
    requestConfig: {
        type: PropType<RequestConfig>;
        required: false;
    };
    /**
     * CSS配置
     */
    cssConfig: {
        type: PropType<CssConfig>;
        required: false;
    };
}>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
