export declare const BUILT_IN_REFERENCE_KINDS: readonly ["post", "form", "bookingForm", "appointmentService", "appointmentResource", "page", "newsletterList"];
export type BuiltInReferenceKind = (typeof BUILT_IN_REFERENCE_KINDS)[number];
export type EntryPickerValueFrom = 'id' | 'identifier' | 'slug';
/**
 * Tagged template literal for dynamic content-type-keyed reference kinds.
 * The string form is `content:${contentTypeKey}` (e.g. `content:product`).
 */
export type DynamicContentReferenceKind = `content:${string}`;
/**
 * All reference kinds the widget framework can resolve. Either a built-in kind
 * (compile-checked enum) or a dynamic `content:${typeKey}` pattern. Use
 * `isAdapterReferenceKind` to narrow an arbitrary string into this union.
 */
export type ReferenceKind = BuiltInReferenceKind | DynamicContentReferenceKind;
export type ReferenceKindParseResult = Readonly<{
    kind: 'builtIn';
    referenceKind: BuiltInReferenceKind;
}> | Readonly<{
    kind: 'dynamicContent';
    referenceKind: DynamicContentReferenceKind;
    contentTypeKey: string;
}> | Readonly<{
    kind: 'unsupported';
    referenceKind: string;
}>;
export declare function isBuiltInReferenceKind(referenceKind: string): referenceKind is BuiltInReferenceKind;
export declare function isDynamicContentReferenceKind(referenceKind: string): referenceKind is DynamicContentReferenceKind;
export declare function isAdapterReferenceKind(referenceKind: string): referenceKind is ReferenceKind;
export declare function parseReferenceKind(referenceKind: string): ReferenceKindParseResult;
