import { AdminpanelConfig, BaseFieldConfig } from "../interfaces/adminpanelConfig"; import { Attribute } from "../lib/model/AbstractModel"; import { Adminizer } from "../lib/Adminizer"; export declare class ConfigHelper { adminizer: Adminizer; constructor(adminizer: Adminizer); getConfig(): AdminpanelConfig; /** * Checks if given field is identifier of model * * @param {Object} field * @param {Object|string=} modelOrName * @returns {boolean} */ isId(field: { config: { key: string; }; }, modelOrName: string): boolean; /** * Get configured `identifierField` from adminpanel configuration. * * If not configured and model passed try to guess it using `primaryKey` field in model. * If system couldn't guess will return 'id'. * Model could be object or just name (string). * * **Warning** If you will pass record - method will return 'id' * * @returns {string} * @param modelName */ getIdentifierField(modelName: string): string; /** * Checks if CSRF protection enabled in website * * @returns {boolean} */ isCsrfEnabled(): boolean; /** * Normalizes field configuration: fills in default title/visibility and * resolves identifier/display fields for association types. * * @param adminizer * @param config Field configuration object * @param key Field key name * @param modelField Field model configuration * @returns Normalized field configuration */ normalizeFieldConfig(adminizer: Adminizer, config: BaseFieldConfig, key: string, modelField: Attribute): BaseFieldConfig | undefined; /** * Normalizes the entire adminpanel configuration. * Merges custom config with default config and handles normalization. * * @param config The custom config object * @returns The normalized and merged config */ static normalizeConfig(config: AdminpanelConfig): AdminpanelConfig; }