{"version":3,"file":"types.mjs","names":[],"sources":["../../src/utils/types.ts"],"sourcesContent":["import type { AgentCapabilities } from \"@ag-ui/core\";\n\nexport type MaybePromise<T> = T | PromiseLike<T>;\n\n/**\n * More specific utility for records with at least one key\n */\nexport type NonEmptyRecord<T> =\n  T extends Record<string, unknown>\n    ? keyof T extends never\n      ? never\n      : T\n    : never;\n\n/**\n * Type representing an agent's basic information\n */\nexport interface AgentDescription {\n  name: string;\n  className: string;\n  description: string;\n  capabilities?: AgentCapabilities;\n}\n\nexport type RuntimeMode = \"sse\" | \"intelligence\";\n\nexport const RUNTIME_MODE_SSE = \"sse\" as const;\nexport const RUNTIME_MODE_INTELLIGENCE = \"intelligence\" as const;\n\nexport interface IntelligenceRuntimeInfo {\n  wsUrl: string;\n}\n\nexport interface ThreadEndpointRuntimeInfo {\n  list: boolean;\n  inspect: boolean;\n  mutations: boolean;\n  realtimeMetadata: boolean;\n}\n\nexport type RuntimeLicenseStatus =\n  | \"valid\"\n  | \"none\"\n  | \"expired\"\n  | \"expiring\"\n  | \"invalid\"\n  | \"unknown\";\n\nexport interface A2UIRuntimeInfo {\n  enabled: boolean;\n  /**\n   * Agent ids the runtime applies A2UI to. When omitted, A2UI applies to\n   * every agent served by the runtime.\n   */\n  agents?: string[];\n}\n\nexport interface RuntimeInfo {\n  version: string;\n  agents: Record<string, AgentDescription>;\n  audioFileTranscriptionEnabled: boolean;\n  mode: RuntimeMode;\n  intelligence?: IntelligenceRuntimeInfo;\n  threadEndpoints?: ThreadEndpointRuntimeInfo;\n  /**\n   * When true, the runtime exposes POST /agent/:agentId/suggest for stateless\n   * suggestion generation. Absent on older runtimes; clients fall back to a\n   * client-side agent run.\n   */\n  suggestions?: boolean;\n  /**\n   * @deprecated Use `a2ui` instead, which preserves per-agent scoping.\n   * Kept for backward compatibility with older clients.\n   */\n  a2uiEnabled?: boolean;\n  a2ui?: A2UIRuntimeInfo;\n  openGenerativeUIEnabled?: boolean;\n  licenseStatus?: RuntimeLicenseStatus;\n  telemetryDisabled?: boolean;\n}\n"],"mappings":";AA0BA,MAAa,mBAAmB;AAChC,MAAa,4BAA4B"}