import { S as StorageConfig, a as StorageProvider, C as CollectionConfig, G as GlobalConfig, K as KyroPlugin } from './types-BQnOYvym.cjs'; import { F as Field } from './types-C3QFX0l6.cjs'; import { ZodTypeAny } from 'zod'; interface StorageProviderRegistration { type: string; displayName: string; pluginName?: string; configFields: Field[]; configKey?: string; extractConfig: (storageConfig: StorageConfig, configKey: string) => any; extractRawConfig: (config: any) => any; factory: (config: any) => StorageProvider; } declare class StorageProviderRegistry { private providers; private providerToPlugin; private disabledPlugins; constructor(); private registerLocal; private registerImgix; private registerBunny; private registerCloudflareR2; private registerCloudflareS3; register(registration: StorageProviderRegistration): void; unregister(type: string): void; get(type: string): StorageProviderRegistration | undefined; getAll(): StorageProviderRegistration[]; getAllAvailable(isPluginEnabled?: (name: string) => boolean): StorageProviderRegistration[]; has(type: string): boolean; resolve(type: string, storageConfig: StorageConfig): Promise; resolveWithConfig(type: string, config: any): Promise; getProviderPluginName(type: string): string | undefined; getAllPluginNames(): string[]; setPluginEnabled(name: string, enabled: boolean): void; isPluginEnabled(name: string): boolean; } declare class Registry { storageProviders: StorageProviderRegistry; private collections; private globals; private plugins; private schemaCache; private initialized; addCollection(config: CollectionConfig): void; addCollections(configs: CollectionConfig[]): void; getCollection(slug: string): CollectionConfig | undefined; getCollections(): CollectionConfig[]; getCollectionSlugs(): string[]; hasCollection(slug: string): boolean; removeCollection(slug: string): boolean; addGlobal(config: GlobalConfig): void; /** * Add a global after the registry is already initialized. * Only for internal use (e.g. storage settings form built at startup). */ addGlobalPostInit(config: GlobalConfig): void; private _addGlobalUnsafe; addGlobals(configs: GlobalConfig[]): void; getGlobal(slug: string): GlobalConfig | undefined; getGlobals(): GlobalConfig[]; getGlobalSlugs(): string[]; hasGlobal(slug: string): boolean; removeGlobal(slug: string): boolean; addPlugin(plugin: KyroPlugin): void; getPlugins(): KyroPlugin[]; getZodSchema(slug: string): ZodTypeAny; getCreateZodSchema(slug: string): ZodTypeAny; getUpdateZodSchema(slug: string): ZodTypeAny; getWhereZodSchema(slug: string): ZodTypeAny; getFieldZodSchema(field: Field): ZodTypeAny; private clearSchemaCache; private applyFieldDefaults; getFields(slug: string): Field[]; getFieldMap(slug: string): Map; getVisibleFields(slug: string): Field[]; validate(): void; init(kyroInstance?: any): Promise; isInitialized(): boolean; getPaginationDefaults(slug: string): { defaultLimit: number; limits: number[]; }; getDefaultSort(slug: string): string; getDefaultColumns(slug: string): string[]; getAdminTitle(slug: string): string; getAdminLabel(slug: string): string; getAdminGroup(slug: string): string | undefined; getStats(): { collections: number; globals: number; plugins: number; fields: number; }; toJSON(): { collections: CollectionConfig[]; globals: GlobalConfig[]; }; } declare function getRegistry(): Registry; declare function resetRegistry(): void; declare function createRegistry(): Registry; export { Registry as R, createRegistry as c, getRegistry as g, resetRegistry as r };