/** * module: llm —— 唯一出口。只做 re-export,不写逻辑(编码规范 §10.1)。 */ export type { BindingViolation, GatewayMode, LlmInstanceView, LlmProvider, LlmService, ModelBinding, ModelCall, ModelGateway, ResolvedEndpoint, ModelResult, ModelUsage, UpsertLlmInstance, } from './contract.ts'; export { GATEWAY_MODES, ModelDisabledError, ModelNotBoundError, ReplayMissError } from './contract.ts'; export type { Clock, IdGenerator, LlmInstanceRepository, ProviderInvoker, ReplayRecord, ReplayStore, SecretBox, } from './port.ts'; export type { LlmServiceDeps } from './internal/usecase/llm-service.ts'; export { createLlmService } from './internal/usecase/llm-service.ts'; export type { ModelGatewayDeps } from './internal/usecase/model-gateway.ts'; export { createModelGateway } from './internal/usecase/model-gateway.ts'; export { isBound, pickSystemUse, toPublicView, validateBinding } from './internal/domain/model-binding.ts'; export { callFingerprint, replayKey, stableStringify } from './internal/domain/replay-key.ts'; export { createLlmInstanceRepository, createReplayStore } from './internal/adapter/llm-repository.ts'; export { createProviderInvoker, parseJsonLoose } from './internal/adapter/ai-sdk-provider.ts'; export { llmInstanceTable, replayModelTable } from './internal/adapter/llm-schema.ts';