export default interface CrudStoreModel { initialized: boolean; language: string; path: string; loading: boolean; hasItemsError: boolean; items: CrudStoreItemsModel[]; overview: CrudStoreOverviewModel; schema?: CrudStoreSchemaModel; } export interface CrudStoreOverviewModel { fields?: string[]; customFields?: CrudStoreCustomFieldsModel; } export interface CrudStoreCustomFieldsModel { [k: string]: string | boolean | number; } export interface CrudStoreItemsModel { language?: string | null; languageRef?: string | null; [k: string]: any; } export interface CrudStoreSchemaModel { type: string; title: string; properties: CrudStoreSchemaPropertiesModel; oneOf?: CrudStoreSchemaModel[]; isSingleton?: boolean; preventCreate?: boolean; preventCopy?: boolean; preventDelete?: boolean; } export interface CrudStoreSchemaPropertiesModel { $type: TypeSchemaModel; [k: string]: BaseSchemaModel | TypeSchemaModel; } export interface CrudStoreItemsSchemaModel { $ref?: string; oneOf?: CrudStoreSchemaPropertiesModel[]; properties?: CrudStoreSchemaPropertiesModel; } export interface TypeSchemaModel { enum: string[]; isHidden: boolean; } export interface BaseSchemaModel extends CrudStoreItemsSchemaModel { title: string; type: string; format: string; required: boolean; isHidden: boolean; items?: CrudStoreItemsSchemaModel; minLength?: number; default?: string; } export interface ExternalItemSchemaModel extends BaseSchemaModel { externalReference?: string; externalReferenceId?: string; }