/**
 * Generated by scripts/gen-cordis-inspect-catalog.ts — do not edit by hand; run
 * `pnpm run gen-cordis-inspect-catalog` to regenerate (freshness-gated by
 * `pnpm run verify-cordis-inspect-catalog` in doc-sync).
 *
 * The machine-readable cordis API catalog `cordis_inspect` serves to the
 * model: harness services (summary + structured public method contracts),
 * harness events (mode + structured listener contracts), and the inherited `ctx` API. Produced by
 * the same AST walk as docs/cordis-catalog, so this data and the rendered
 * docs cannot diverge.
 *
 * @module @deepseek-ai/dsh-cordis-client-runner/client/api-catalog
 */
/** One named parameter in a Service method or Event listener. */
export interface ApiParameter {
    /** Parameter name from the exact signature. */
    name: string;
    /** Source-owned parameter contract. */
    description: string;
}
/** One public service member and its source-owned contract. */
export interface ServiceApiMethod {
    /** Public method signature with its body stripped. */
    signature: string;
    /** Method purpose and behavior. */
    description: string;
    /** Named parameters in signature order. */
    parameters: readonly ApiParameter[];
    /** Non-void result contract when documented. */
    returns?: string;
    /** Documented failure conditions. */
    throws?: readonly string[];
}
/** One harness `ctx.<key>` service and its public methods. */
export interface ServiceApiEntry {
    /** The `ctx.<key>` name, e.g. `tools`. */
    key: string;
    /** First sentence of the service class JSDoc. */
    summary: string;
    /** Complete service description. */
    description: string;
    /** Public methods, bodies stripped, in source order. */
    methods: readonly ServiceApiMethod[];
}
/** One harness event: its dispatch mode, exact signature, and listener contract. */
export interface EventApiEntry {
    /** The scoped event name, e.g. `agent/status`. */
    name: string;
    /** The dispatch mode from the declaration's `@mode` tag. */
    mode: string;
    /** The exact listener signature, whitespace-normalized. */
    signature: string;
    /** First sentence of the event JSDoc. */
    summary: string;
    /** Complete event description. */
    description: string;
    /** Named listener parameters in signature order. */
    parameters: readonly ApiParameter[];
}
/** One inherited (cordis core + loader/hmr/timer) `ctx` member group with its summary. */
export interface InheritedApiEntry {
    /** The `ctx` member name(s), e.g. `ctx.on / ctx.once`. */
    name: string;
    /** One-line summary of what the member does. */
    summary: string;
}
/** One named type declaration referenced by a Service or Event signature. */
export interface TypeApiEntry {
    /** The exported type/interface name, e.g. `ShellRunResult`. */
    name: string;
    /** The full declaration text, comments stripped. */
    declaration: string;
}
/** Every harness `ctx.<key>` service, sorted by key. */
export declare const SERVICE_API: readonly ServiceApiEntry[];
/** Every harness event, sorted by name. */
export declare const EVENT_API: readonly EventApiEntry[];
/** Shapes of every exported type the Service and Event signatures reference (transitively), sorted by name. */
export declare const TYPE_API: readonly TypeApiEntry[];
/** The inherited `ctx` API (cordis core + loader/hmr/timer), in curated order. */
export declare const INHERITED_CTX_API: readonly InheritedApiEntry[];
/**
 * Project the Service Catalog as a compact directory or one exact coding contract.
 * @param key - exact Service key; omit it to list all Services and method signatures.
 * @param services - platform-specific visible Service entries.
 * @returns compact navigation data or one detailed Service with its referenced type closure.
 */
export declare function queryServiceApi(key?: string, services?: readonly ServiceApiEntry[]): object;
/**
 * Project the Event Catalog as a compact directory or one exact listener contract.
 * @param name - exact Event name; omit it to list all Events and listener signatures.
 * @param events - platform-specific visible Event entries.
 * @returns compact navigation data or one detailed Event with its referenced type closure.
 */
export declare function queryEventApi(name?: string, events?: readonly EventApiEntry[]): object;
//# sourceMappingURL=api-catalog.d.ts.map