summaryrefslogtreecommitdiffhomepage
path: root/packages/kernel/src/contracts/index.ts
blob: fc192677b97635bb0dbefa2804e564d3da9d8cf7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
/**
 * Kernel contracts barrel — the stable ABI every extension compiles against.
 *
 * Re-exports all contract types and pure helpers. No implementations, no I/O,
 * no concrete feature names. This is the only surface extensions depend on
 * from the kernel.
 */

export type {
  ApiKeyCredentials,
  AuthContract,
  BearerTokenCredentials,
  Credentials,
} from "./auth.js";
export type {
  ChatMessage,
  Chunk,
  CompactionResult,
  ConversationMeta,
  ConversationStatus,
  ErrorChunk,
  ImageChunk,
  ImageInput,
  Role,
  StepId,
  StepMetrics,
  StoredChunk,
  SystemChunk,
  TextChunk,
  ThinkingChunk,
  ToolCallChunk,
  ToolResultChunk,
  TurnId,
  TurnMetrics,
  Workspace,
  WorkspaceEntry,
} from "./conversation.js";
export type { ToolDispatchPolicy } from "./dispatch.js";
export type {
  AgentEvent,
  StatusEvent,
  TurnDoneEvent,
  TurnErrorEvent,
  TurnInputEvent,
  TurnProviderRetryEvent,
  TurnReasoningDeltaEvent,
  TurnSealedEvent,
  TurnStartEvent,
  TurnSteeringEvent,
  TurnStepCompleteEvent,
  TurnTextDeltaEvent,
  TurnToolCallEvent,
  TurnToolOutputEvent,
  TurnToolResultEvent,
  TurnUsageEvent,
} from "./events.js";
export type {
  ConfigAccess,
  EventsEmitter,
  Extension,
  HostAPI,
  Manifest,
  ManifestCapabilities,
  ManifestContributions,
  PermissionDecision,
  PermissionGate,
  PermissionRequest,
  ScheduledJob,
  SecretsAccess,
  StorageNamespace,
  TrustLevel,
} from "./extension.js";
export type {
  EventHandler,
  EventHookDescriptor,
  FilterDescriptor,
  FilterHandler,
  HookDescriptor,
  ServiceHandle,
} from "./hooks.js";
export { defineEventHook, defineFilter, defineService } from "./hooks.js";
export type {
  Attributes,
  ErrorAttributes,
  Level,
  LogContext,
  LogDeps,
  Logger,
  LogLineRecord,
  LogRecord,
  LogSink,
  Span,
  SpanCloseRecord,
  SpanLink,
  SpanOpenRecord,
  SpanStatus,
} from "./logging.js";
export type {
  FinishEvent,
  ModelInfo,
  ProviderContract,
  ProviderErrorEvent,
  ProviderEvent,
  ProviderStreamOptions,
  ProviderToolCallEvent,
  ProviderUsage,
  ReasoningDeltaEvent,
  ReasoningEffort,
  TextDeltaEvent,
  Usage,
  UsageEvent,
} from "./provider.js";
export type {
  EventEmitter,
  FinishReason,
  RetryStrategy,
  RunTurnInput,
  RunTurnResult,
} from "./runtime.js";
export type {
  JsonSchemaProperty,
  ToolCall,
  ToolContract,
  ToolExecuteContext,
  ToolParameterSchema,
  ToolResult,
} from "./tool.js";