import { AnyPanel } from './PanelPage';
import { AddChild, HasChildren, HasId, RepresentsRoutes } from './common';
import { CommonRouteObject } from '../type';
interface ViewRoutePartial extends CommonRouteObject {
    view: string;
    panel: string;
    modal?: string;
}
export declare class ViewConfig<T extends string> implements HasId<T>, HasChildren<AnyPanel>, RepresentsRoutes<ViewRoutePartial> {
    id: T;
    private panels;
    constructor(id: T, panels: AnyPanel[]);
    get children(): AnyPanel[];
    getRoutes(): ViewRoutePartial[];
}
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel, H extends AnyPanel, I extends AnyPanel, J extends AnyPanel, K extends AnyPanel, L extends AnyPanel, M extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G, H, I, J, K, L, M]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>, H>, I>, J>, K>, L>, M>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel, H extends AnyPanel, I extends AnyPanel, J extends AnyPanel, K extends AnyPanel, L extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G, H, I, J, K, L]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>, H>, I>, J>, K>, L>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel, H extends AnyPanel, I extends AnyPanel, J extends AnyPanel, K extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G, H, I, J, K]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>, H>, I>, J>, K>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel, H extends AnyPanel, I extends AnyPanel, J extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G, H, I, J]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>, H>, I>, J>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel, H extends AnyPanel, I extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G, H, I]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>, H>, I>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel, H extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G, H]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>, H>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel, G extends AnyPanel>(id: T, panels: [A, B, C, D, E, F, G]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>, G>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel, F extends AnyPanel>(id: T, panels: [A, B, C, D, E, F]): AddChild<AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>, F>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel, E extends AnyPanel>(id: T, panels: [A, B, C, D, E]): AddChild<AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>, E>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel, D extends AnyPanel>(id: T, panels: [A, B, C, D]): AddChild<AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>, D>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel, C extends AnyPanel>(id: T, panels: [A, B, C]): AddChild<AddChild<AddChild<ViewConfig<T>, A>, B>, C>;
export declare function createView<T extends string, A extends AnyPanel, B extends AnyPanel>(id: T, panels: [A, B]): AddChild<AddChild<ViewConfig<T>, A>, B>;
export declare function createView<T extends string, A extends AnyPanel>(id: T, panels: [A]): AddChild<ViewConfig<T>, A>;
export declare function createView<T extends string>(id: T, panels: AnyPanel[]): ViewConfig<T>;
export {};
//# sourceMappingURL=ViewConfig.d.ts.map