import { ICoreSype, ICoreSypg, ICoreSypgr, ICoreSyptb, ICoreSytm, ITabs } from "../../schema";
import { controllerResponse } from "../../utilities";
type IDesignConfigErrorLogger = {
    [key in keyof MDesignConfig]: string;
};
declare class MDesignConfig {
    sypg_page_code?: string;
    sytm_entity_id_syen?: string;
    constructor(init: MDesignConfig);
    Validate?(): Partial<IDesignConfigErrorLogger>;
}
interface designConfigControllerResponse extends controllerResponse {
    data?: designConfigResponseData;
}
interface designConfigResponseData {
    page?: Partial<ICoreSypg>;
    theme?: Partial<ICoreSytm>;
    grid?: {
        [key: string]: ICoreSypgr;
    };
    controls?: {
        [key: string]: ICoreSype;
    };
    tab?: {
        [key: string]: ICoreTabs;
    };
    rights?: {
        [permissionId: string]: {
            allowed: boolean;
            source: 'role' | 'exception';
        };
    };
}
interface ICoreTabs extends ICoreSyptb {
    syptb_tabs_select: {
        [key: string]: ITabs;
    };
}
export { IDesignConfigErrorLogger, //interface
MDesignConfig, // model
designConfigControllerResponse, designConfigResponseData, ICoreTabs };
