import type { EggAppInfo } from '@eggjs/core';
/**
 * view default config
 * @member Config#view
 * @property {String} [root=${baseDir}/app/view] - give a path to find the file, you can specify multiple path with `,` delimiter
 * @property {Boolean} [cache=true] - whether cache the file's path
 * @property {String} [defaultExtension] - defaultExtension can be added automatically when there is no extension  when call `ctx.render`
 * @property {String} [defaultViewEngine] - set the default view engine if you don't want specify the viewEngine every request.
 * @property {Object} mapping - map the file extension to view engine, such as `{ '.ejs': 'ejs' }`
 */
export interface ViewConfig {
    /**
     * give a path to find the file, you can specify multiple path with `,` delimiter
     * Default is `${baseDir}/app/view`
     */
    root: string;
    /**
     * whether cache the file's path
     * Default is `true`
     */
    cache: boolean;
    /**
     * defaultExtension can be added automatically when there is no extension  when call `ctx.render`
     * Default is `.html`
     */
    defaultExtension: string;
    /**
     * set the default view engine if you don't want specify the viewEngine every request.
     * Default is `''`
     */
    defaultViewEngine: string;
    /**
     * map the file extension to view engine, such as `{ '.ejs': 'ejs' }`
     * Default is `{}`
     */
    mapping: Record<string, string>;
}
declare const _default: (appInfo: EggAppInfo) => {
    view: {
        root: string;
        cache: boolean;
        defaultExtension: string;
        defaultViewEngine: string;
        mapping: {};
    };
};
export default _default;
declare module '@eggjs/core' {
    interface EggAppConfig {
        view: ViewConfig;
    }
}
