import type { CollectionBackend, DataExtensionOverrides, SchemaSource } from '@wix/bex-core'; import type { FieldsSourceProvider } from '../components/fieldsSourceProvider'; export interface PlatformizedSourceInput extends DataExtensionOverrides { /** The entity's fqdn — becomes the source id and query name. */ fqdn: string; /** The consumer's item data access. `find` drives the collection query — * the same code a classic `fetchData` runs. Writes are optional * capabilities; when present they feed the editable-table row mutations. */ backend: CollectionBackend; /** Row identity. Default: `item[idField]`. */ itemKey?: (item: T) => string; /** Row display label. Default: `item[displayField]`. */ itemName?: (item: T) => string; /** Default: `'id'` — the platformized standard. */ idField?: string; /** Default: `idField`. */ displayField?: string; } type SelfAttachingSource = SchemaSource & FieldsSourceProvider; /** * A source for a platformized entity: the consumer owns the items (via * `backend`) and the source adds field management and rendering of the added * fields on top. Recreated only when `fqdn` changes. */ export declare const usePlatformizedSource: >(input: PlatformizedSourceInput) => SchemaSource; /** Transitional (until the adapter refit): platformized sources attach their * own fields area instead of going through SchemaState. */ export declare const attachesItself: (source: SchemaSource) => source is SelfAttachingSource; export {}; //# sourceMappingURL=usePlatformizedSource.d.ts.map