/**
 * Generated by scripts/gen-client-catalog.ts — do not edit by hand; run
 * `pnpm run gen-client-catalog` to regenerate (freshness-gated by
 * `pnpm run verify-client-catalog` in doc-sync).
 *
 * The compile-time contract of the shipped web bundle's slot surface, as
 * `cordis_inspect what:"client"` serves it to the model: every SlotMap key a
 * browser half can register into, what that register call must pass, what the
 * component receives, who already occupies the seat, and which owner has to be
 * mounted for the seat to exist. Data only — this module is the one legitimate
 * meeting point of the two planes, so it carries strings, never client imports.
 *
 * @module @deepseek-ai/dsh-cordis-client-runner/client/slot-catalog
 */
/** One option a register call passes for a given slot cardinality. */
export interface ClientSlotOption {
    /** Option name as written in the register options object. */
    name: string;
    /** Whether the cardinality requires it. */
    requirement: string;
    /** Accepted type, in source spelling. */
    type: string;
    /** What it does, from the registrant's side. */
    doc: string;
}
/** One browser-half slot a dynamic package can contribute UI into. */
export interface ClientSlotEntry {
    /** SlotMap key passed as the register call's `name`. */
    key: string;
    /** Cardinality: `single`, `list`, `keyed`, or `chain`. */
    kind: string;
    /** Data scope: `root`, `session`, or `session-maybe`. */
    scope: string;
    /** First sentence of the contract prose. */
    summary: string;
    /** Full contract prose from the SlotMap declaration. */
    doc: string;
    /** Options this cardinality accepts (beyond `name`). */
    registerOptions: readonly ClientSlotOption[];
    /** Declarations of the props the owner passes down, with their own documentation. */
    ownerProps: readonly string[];
    /** Names of the shapes those props reference; deliberately not expanded here. */
    ownerPropsReferences: readonly string[];
    /** Framework-supplied component props for this scope. */
    standardProps: readonly string[];
    /** For keyed slots: how the key set is constrained and which keys are taken. */
    keyDomain: string;
    /** Opaque per-render-site context passed to slot-level hooks, when the slot declares one. */
    hookContext: string;
    /** Slot-level inject face every entry receives, when the slot declares one. */
    slotInject: string;
    /** Which mounted entry makes this slot exist. */
    declaredBy: string;
    /** Entries the shipped composition already registered here. */
    occupants: readonly string[];
    /** `shadows-shipped-ui` when registering here replaces shipped UI; `none` when additive. */
    replaceRisk: string;
    /** A minimal browser half that registers into this slot. */
    example: string;
    /** Source pointer of the contract declaration. */
    source: string;
}
/** Rules that apply to every browser-half contribution, in reading order. */
export declare const CLIENT_NOTES: readonly string[];
/** Every slot the shipped web bundle declares, sorted by key. */
export declare const CLIENT_SLOT_API: readonly ClientSlotEntry[];
//# sourceMappingURL=slot-catalog.d.ts.map