import { AgentContentPart } from './types'; export type AgentResource = { /** Unique URI identifying this resource (e.g. `'cdf://charts/time-range'`). */ uri: string; /** Short human-readable label (e.g. `'Chart time range'`). */ name: string; /** Explains what the resource contains and when it is useful to the agent. */ description: string; /** Returns the resource content on demand. */ read(): Promise; }; /** * Create an agent resource that the agent can read on demand. * * Validates the definition at creation time and throws if `uri` or `name` is * empty or blank. * * Resources are identified by a URI and expose their content through a lazy * `read()` call. Adapters may call `read()` only when the agent explicitly * requests the resource by URI, so `read()` should not be called eagerly. * * @throws {Error} If `uri` is empty or blank. * @throws {Error} If `name` is empty or blank. * */ export declare function createAgentResource(definition: AgentResource): AgentResource;