import "reflect-metadata";
import { MaybePromise } from "@copilotkit/shared";

//#region src/v2/runtime/core/learning.d.ts
/** Context for choosing one Learning Container for an Intelligence run. */
type CopilotRuntimeLearningContext = {
  readonly surface: "web";
  readonly request: Request;
  readonly threadId: string;
  readonly runId: string;
  readonly agentId: string;
  readonly userId: string;
} | {
  readonly surface: "channel";
  readonly threadId: string;
  readonly runId: string;
  readonly agentId: string;
  readonly userId: string;
  readonly deliveryId: string;
};
/** Assigns each Intelligence Thread to one developer-created Learning Container. */
interface CopilotRuntimeLearningConfig {
  readonly containerId: string | ((input: CopilotRuntimeLearningContext) => MaybePromise<string | null | undefined>);
}
//#endregion
export { CopilotRuntimeLearningConfig, CopilotRuntimeLearningContext };
//# sourceMappingURL=learning.d.mts.map