@kitman-sh/sdk 0.7.2 → 0.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/package.json +1 -1
  2. package/types/packages/core/src/a2a.d.ts +577 -0
  3. package/types/packages/core/src/agent-capabilities.d.ts +1434 -0
  4. package/types/packages/core/src/agent-launch-snapshot.d.ts +44 -0
  5. package/types/packages/core/src/approval-queue.d.ts +126 -0
  6. package/types/packages/core/src/audit.d.ts +52 -0
  7. package/types/packages/core/src/change-delivery.d.ts +39 -0
  8. package/types/packages/core/src/change-request-review.d.ts +146 -0
  9. package/types/packages/core/src/change-request.d.ts +432 -0
  10. package/types/packages/core/src/connection.d.ts +33 -0
  11. package/types/packages/core/src/context-feedback.d.ts +89 -0
  12. package/types/packages/core/src/data-lifecycle.d.ts +195 -0
  13. package/types/packages/core/src/decision.d.ts +48 -0
  14. package/types/packages/core/src/delivery-operation.d.ts +125 -0
  15. package/types/packages/core/src/delivery-policy.d.ts +174 -0
  16. package/types/packages/core/src/engineering-resources.d.ts +26 -0
  17. package/types/packages/core/src/enterprise-code-host.d.ts +18 -0
  18. package/types/packages/core/src/epic-delivery.d.ts +38 -0
  19. package/types/packages/core/src/external-effect.d.ts +313 -0
  20. package/types/packages/core/src/fix-flow.d.ts +149 -0
  21. package/types/packages/core/src/following.d.ts +59 -0
  22. package/types/packages/core/src/github-delivery-fixtures.d.ts +28 -0
  23. package/types/packages/core/src/github-delivery.d.ts +78 -0
  24. package/types/packages/core/src/gitlab-delivery-fixtures.d.ts +26 -0
  25. package/types/packages/core/src/gitlab-delivery.d.ts +76 -0
  26. package/types/packages/core/src/global-search.d.ts +42 -0
  27. package/types/packages/core/src/id.d.ts +1 -0
  28. package/types/packages/core/src/integration.d.ts +275 -0
  29. package/types/packages/core/src/intent.d.ts +260 -0
  30. package/types/packages/core/src/json.d.ts +10 -0
  31. package/types/packages/core/src/kit-taxonomy.d.ts +21 -0
  32. package/types/packages/core/src/live.d.ts +8318 -0
  33. package/types/packages/core/src/me.d.ts +31 -0
  34. package/types/packages/core/src/memory.d.ts +88 -0
  35. package/types/packages/core/src/my-teams.d.ts +1230 -0
  36. package/types/packages/core/src/notification.d.ts +181 -0
  37. package/types/packages/core/src/observability.d.ts +175 -0
  38. package/types/packages/core/src/package.d.ts +369 -0
  39. package/types/packages/core/src/personal-development-profile.d.ts +11 -0
  40. package/types/packages/core/src/platform-release.d.ts +60 -0
  41. package/types/packages/core/src/program-credential.d.ts +10 -0
  42. package/types/packages/core/src/project.d.ts +66 -0
  43. package/types/packages/core/src/provider-safe-text.d.ts +2 -0
  44. package/types/packages/core/src/repo-binding.d.ts +131 -0
  45. package/types/packages/core/src/run-journal.d.ts +28 -0
  46. package/types/packages/core/src/run-launch.d.ts +67 -0
  47. package/types/packages/core/src/runner-eligibility.d.ts +43 -0
  48. package/types/packages/core/src/runner-routing.d.ts +11 -0
  49. package/types/packages/core/src/runner-trust.d.ts +67 -0
  50. package/types/packages/core/src/runner.d.ts +3776 -0
  51. package/types/packages/core/src/scope-directory.d.ts +100 -0
  52. package/types/packages/core/src/secret.d.ts +37 -0
  53. package/types/packages/core/src/session.d.ts +90 -0
  54. package/types/packages/core/src/step-brief.d.ts +50 -0
  55. package/types/packages/core/src/sync-kit.d.ts +587 -0
  56. package/types/packages/core/src/task-detail.d.ts +491 -0
  57. package/types/packages/core/src/task-execution-record.d.ts +620 -0
  58. package/types/packages/core/src/task-key.d.ts +9 -0
  59. package/types/packages/core/src/task.d.ts +543 -0
  60. package/types/packages/core/src/work-unit.d.ts +740 -0
  61. package/types/packages/core/src/workspace.d.ts +96 -0
  62. package/types/packages/live/src/rpc/runner-group.d.ts +260 -260
@@ -0,0 +1,181 @@
1
+ import * as Schema from 'effect/Schema';
2
+ import type { WorkspaceNotificationPreferences } from './workspace';
3
+ export declare const NotificationKinds: readonly ['question_waiting', 'run_failed', 'review_ready', 'no_runner', 'proposal_waiting', 'assigned', 'mentioned', 'commented', 'state_changed', 'run_finished', 'drift_unresolved', 'run_progress', 'change_request_update', 'start_blocked'];
4
+ export type NotificationKind = (typeof NotificationKinds)[number];
5
+ /** The facts a Notification's fixed templates render; never Outputs, transcripts, source or secrets. */
6
+ export declare const NotificationPayload: Schema.Struct<{
7
+ readonly taskKey: Schema.optionalKey<Schema.String>;
8
+ readonly taskTitle: Schema.optionalKey<Schema.String>;
9
+ readonly loopTitle: Schema.optionalKey<Schema.String>;
10
+ readonly proposalTitle: Schema.optionalKey<Schema.String>;
11
+ /** The Question's name, the Run's status, or the drifted constraint. */
12
+ readonly cause: Schema.optionalKey<Schema.String>;
13
+ /** The state a Task moved to. */
14
+ readonly state: Schema.optionalKey<Schema.String>;
15
+ readonly changeRequestUrl: Schema.optionalKey<Schema.String>;
16
+ /** What a Run needs that Kitman could not choose, such as its Loop or repository. */
17
+ readonly missing: Schema.optionalKey<Schema.$Array<Schema.String>>;
18
+ }>;
19
+ export type NotificationPayload = (typeof NotificationPayload)['Type'];
20
+ export declare const NotificationSubject: Schema.Struct<{
21
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
22
+ readonly id: Schema.String;
23
+ }>;
24
+ export declare const Notification: Schema.Struct<{
25
+ readonly id: Schema.String;
26
+ readonly workspaceId: Schema.String;
27
+ readonly recipientUserId: Schema.String;
28
+ readonly kind: Schema.Literals<readonly ["question_waiting", "run_failed", "review_ready", "no_runner", "proposal_waiting", "assigned", "mentioned", "commented", "state_changed", "run_finished", "drift_unresolved", "run_progress", "change_request_update", "start_blocked"]>;
29
+ readonly subject: Schema.Struct<{
30
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
31
+ readonly id: Schema.String;
32
+ }>;
33
+ /** Empty when Kitman acted. */
34
+ readonly actorId: Schema.optionalKey<Schema.String>;
35
+ readonly actorName: Schema.optionalKey<Schema.String>;
36
+ readonly payload: Schema.Struct<{
37
+ readonly taskKey: Schema.optionalKey<Schema.String>;
38
+ readonly taskTitle: Schema.optionalKey<Schema.String>;
39
+ readonly loopTitle: Schema.optionalKey<Schema.String>;
40
+ readonly proposalTitle: Schema.optionalKey<Schema.String>;
41
+ /** The Question's name, the Run's status, or the drifted constraint. */
42
+ readonly cause: Schema.optionalKey<Schema.String>;
43
+ /** The state a Task moved to. */
44
+ readonly state: Schema.optionalKey<Schema.String>;
45
+ readonly changeRequestUrl: Schema.optionalKey<Schema.String>;
46
+ /** What a Run needs that Kitman could not choose, such as its Loop or repository. */
47
+ readonly missing: Schema.optionalKey<Schema.$Array<Schema.String>>;
48
+ }>;
49
+ readonly title: Schema.String;
50
+ readonly body: Schema.String;
51
+ readonly link: Schema.String;
52
+ readonly createdAt: Schema.String;
53
+ readonly readAt: Schema.optionalKey<Schema.String>;
54
+ }>;
55
+ export type Notification = (typeof Notification)['Type'];
56
+ export declare const InboxActions: readonly ['answer', 'review', 'decide', 'retry', 'runner_offline', 'start'];
57
+ export declare const InboxFilters: readonly ['inbox', 'unread', 'snoozed', 'done'];
58
+ export type InboxFilter = (typeof InboxFilters)[number];
59
+ /** One subject's Notifications for its recipient, newest first; the item a person works in their Inbox. */
60
+ export declare const InboxItem: Schema.Struct<{
61
+ readonly subject: Schema.Struct<{
62
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
63
+ readonly id: Schema.String;
64
+ }>;
65
+ /** What the item asks of its recipient, until it is done. */
66
+ readonly action: Schema.optionalKey<Schema.Literals<readonly ["answer", "review", "decide", "retry", "runner_offline", "start"]>>;
67
+ readonly unread: Schema.Int;
68
+ readonly latestAt: Schema.String;
69
+ readonly doneAt: Schema.optionalKey<Schema.String>;
70
+ readonly snoozedUntil: Schema.optionalKey<Schema.String>;
71
+ readonly notifications: Schema.$Array<Schema.Struct<{
72
+ readonly id: Schema.String;
73
+ readonly workspaceId: Schema.String;
74
+ readonly recipientUserId: Schema.String;
75
+ readonly kind: Schema.Literals<readonly ["question_waiting", "run_failed", "review_ready", "no_runner", "proposal_waiting", "assigned", "mentioned", "commented", "state_changed", "run_finished", "drift_unresolved", "run_progress", "change_request_update", "start_blocked"]>;
76
+ readonly subject: Schema.Struct<{
77
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
78
+ readonly id: Schema.String;
79
+ }>;
80
+ /** Empty when Kitman acted. */
81
+ readonly actorId: Schema.optionalKey<Schema.String>;
82
+ readonly actorName: Schema.optionalKey<Schema.String>;
83
+ readonly payload: Schema.Struct<{
84
+ readonly taskKey: Schema.optionalKey<Schema.String>;
85
+ readonly taskTitle: Schema.optionalKey<Schema.String>;
86
+ readonly loopTitle: Schema.optionalKey<Schema.String>;
87
+ readonly proposalTitle: Schema.optionalKey<Schema.String>;
88
+ /** The Question's name, the Run's status, or the drifted constraint. */
89
+ readonly cause: Schema.optionalKey<Schema.String>;
90
+ /** The state a Task moved to. */
91
+ readonly state: Schema.optionalKey<Schema.String>;
92
+ readonly changeRequestUrl: Schema.optionalKey<Schema.String>;
93
+ /** What a Run needs that Kitman could not choose, such as its Loop or repository. */
94
+ readonly missing: Schema.optionalKey<Schema.$Array<Schema.String>>;
95
+ }>;
96
+ readonly title: Schema.String;
97
+ readonly body: Schema.String;
98
+ readonly link: Schema.String;
99
+ readonly createdAt: Schema.String;
100
+ readonly readAt: Schema.optionalKey<Schema.String>;
101
+ }>>;
102
+ }>;
103
+ export type InboxItem = (typeof InboxItem)['Type'];
104
+ export declare const InboxList: Schema.Struct<{
105
+ readonly items: Schema.$Array<Schema.Struct<{
106
+ readonly subject: Schema.Struct<{
107
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
108
+ readonly id: Schema.String;
109
+ }>;
110
+ /** What the item asks of its recipient, until it is done. */
111
+ readonly action: Schema.optionalKey<Schema.Literals<readonly ["answer", "review", "decide", "retry", "runner_offline", "start"]>>;
112
+ readonly unread: Schema.Int;
113
+ readonly latestAt: Schema.String;
114
+ readonly doneAt: Schema.optionalKey<Schema.String>;
115
+ readonly snoozedUntil: Schema.optionalKey<Schema.String>;
116
+ readonly notifications: Schema.$Array<Schema.Struct<{
117
+ readonly id: Schema.String;
118
+ readonly workspaceId: Schema.String;
119
+ readonly recipientUserId: Schema.String;
120
+ readonly kind: Schema.Literals<readonly ["question_waiting", "run_failed", "review_ready", "no_runner", "proposal_waiting", "assigned", "mentioned", "commented", "state_changed", "run_finished", "drift_unresolved", "run_progress", "change_request_update", "start_blocked"]>;
121
+ readonly subject: Schema.Struct<{
122
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
123
+ readonly id: Schema.String;
124
+ }>;
125
+ /** Empty when Kitman acted. */
126
+ readonly actorId: Schema.optionalKey<Schema.String>;
127
+ readonly actorName: Schema.optionalKey<Schema.String>;
128
+ readonly payload: Schema.Struct<{
129
+ readonly taskKey: Schema.optionalKey<Schema.String>;
130
+ readonly taskTitle: Schema.optionalKey<Schema.String>;
131
+ readonly loopTitle: Schema.optionalKey<Schema.String>;
132
+ readonly proposalTitle: Schema.optionalKey<Schema.String>;
133
+ /** The Question's name, the Run's status, or the drifted constraint. */
134
+ readonly cause: Schema.optionalKey<Schema.String>;
135
+ /** The state a Task moved to. */
136
+ readonly state: Schema.optionalKey<Schema.String>;
137
+ readonly changeRequestUrl: Schema.optionalKey<Schema.String>;
138
+ /** What a Run needs that Kitman could not choose, such as its Loop or repository. */
139
+ readonly missing: Schema.optionalKey<Schema.$Array<Schema.String>>;
140
+ }>;
141
+ readonly title: Schema.String;
142
+ readonly body: Schema.String;
143
+ readonly link: Schema.String;
144
+ readonly createdAt: Schema.String;
145
+ readonly readAt: Schema.optionalKey<Schema.String>;
146
+ }>>;
147
+ }>>;
148
+ }>;
149
+ export type InboxList = (typeof InboxList)['Type'];
150
+ /** How many items the Inbox shows, and how many of them have something unread. */
151
+ export declare const InboxCounts: Schema.Struct<{
152
+ readonly items: Schema.Int;
153
+ readonly unread: Schema.Int;
154
+ }>;
155
+ export type InboxCounts = (typeof InboxCounts)['Type'];
156
+ export declare const InboxSubjects: Schema.Struct<{
157
+ readonly subjects: Schema.$Array<Schema.Struct<{
158
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
159
+ readonly id: Schema.String;
160
+ }>>;
161
+ }>;
162
+ export type InboxSubjects = (typeof InboxSubjects)['Type'];
163
+ export declare const InboxSnooze: Schema.Struct<{
164
+ readonly subjects: Schema.$Array<Schema.Struct<{
165
+ readonly kind: Schema.Union<readonly [Schema.Literal<"task">, Schema.Literal<"run">, Schema.Literal<"proposal">]>;
166
+ readonly id: Schema.String;
167
+ }>>;
168
+ readonly until: Schema.String;
169
+ }>;
170
+ export type InboxSnooze = (typeof InboxSnooze)['Type'];
171
+ export declare const InboxUnsubscribe: Schema.Struct<{
172
+ readonly taskIds: Schema.$Array<Schema.String>;
173
+ }>;
174
+ export type InboxUnsubscribe = (typeof InboxUnsubscribe)['Type'];
175
+ export declare const notificationPreferenceOf: (kind: NotificationKind) => keyof WorkspaceNotificationPreferences;
176
+ export type RenderedNotification = Pick<Notification, 'title' | 'body' | 'link'>;
177
+ export declare const renderNotification: (notification: {
178
+ readonly kind: NotificationKind;
179
+ readonly subject: (typeof NotificationSubject)['Type'];
180
+ readonly payload: NotificationPayload;
181
+ }) => RenderedNotification;
@@ -0,0 +1,175 @@
1
+ import * as Config from 'effect/Config';
2
+ import * as Context from 'effect/Context';
3
+ import * as Layer from 'effect/Layer';
4
+ import * as Metric from 'effect/Metric';
5
+ import * as Tracer from 'effect/Tracer';
6
+ import type { JsonValue } from './runtime-type';
7
+ /**
8
+ * Shared telemetry contract for the control plane and customer-managed runners.
9
+ *
10
+ * `Telemetry` is the bounded, redacting front of Effect's own observability: metrics live in an Effect metric
11
+ * registry and render through `PrometheusMetrics`, spans come from the Effect `Tracer`, and logs go to the Effect
12
+ * loggers. A process exports all three over OTLP through {@link layerProcessTelemetryExport}.
13
+ */
14
+ export declare const TraceparentHeader: 'traceparent';
15
+ export declare const RequestIdHeader: 'x-request-id';
16
+ /**
17
+ * Only route families registered here may become HTTP metric labels. Unknown
18
+ * paths intentionally collapse to `/unknown`; path-derived values never reach
19
+ * the metrics registry.
20
+ */
21
+ export declare const TrustedRoutePrefixes: readonly string[];
22
+ export type TraceContext = {
23
+ readonly traceId: string;
24
+ readonly spanId: string;
25
+ readonly traceFlags: string;
26
+ readonly traceState?: string;
27
+ };
28
+ type SpanStatus = 'unset' | 'ok' | 'error';
29
+ type TelemetryAttributeValue = string | number | boolean;
30
+ type TelemetryAttributes = Readonly<{
31
+ readonly [key: string]: JsonValue;
32
+ }>;
33
+ type TelemetryLabelInput = Readonly<{
34
+ readonly [key: string]: JsonValue;
35
+ }>;
36
+ type SpanRecord = {
37
+ readonly traceId: string;
38
+ readonly spanId: string;
39
+ readonly parentSpanId?: string;
40
+ readonly name: string;
41
+ readonly serviceName: string;
42
+ readonly startTimeUnixMs: number;
43
+ readonly endTimeUnixMs: number;
44
+ readonly status: SpanStatus;
45
+ readonly attributes: Readonly<Record<string, TelemetryAttributeValue>>;
46
+ readonly events: readonly SpanEvent[];
47
+ };
48
+ type SpanEvent = {
49
+ readonly name: string;
50
+ readonly timeUnixMs: number;
51
+ readonly attributes: Readonly<Record<string, TelemetryAttributeValue>>;
52
+ };
53
+ type MetricType = 'counter' | 'gauge' | 'histogram';
54
+ type MetricDefinition = {
55
+ readonly name: string;
56
+ readonly help: string;
57
+ readonly type: MetricType;
58
+ readonly labelNames: readonly string[];
59
+ readonly maxSeries?: number;
60
+ readonly buckets?: readonly number[];
61
+ };
62
+ type MetricSeriesSnapshot = {
63
+ readonly name: string;
64
+ readonly type: MetricType;
65
+ readonly labels: Readonly<Record<string, string>>;
66
+ readonly value?: number;
67
+ readonly count?: number;
68
+ readonly sum?: number;
69
+ readonly buckets?: Readonly<Record<string, number>>;
70
+ };
71
+ type TelemetrySnapshot = {
72
+ readonly serviceName: string;
73
+ readonly spans: readonly SpanRecord[];
74
+ readonly metrics: {
75
+ readonly series: readonly MetricSeriesSnapshot[];
76
+ readonly seriesCount: number;
77
+ };
78
+ };
79
+ export declare const MetricDefinitions: readonly MetricDefinition[];
80
+ export declare function parseTraceparent(value: string | undefined | null): TraceContext | undefined;
81
+ export declare function formatTraceparent(context: TraceContext): string;
82
+ export declare function injectTraceContext(headers: Headers | Record<string, string>, context: TraceContext, requestId?: string): void;
83
+ export declare function normalizeRequestId(value: string | undefined | null): string;
84
+ export declare function statusClass(status: number): `${1 | 2 | 3 | 4 | 5}xx` | 'unknown';
85
+ export declare function templateRoute(pathname: string): string;
86
+ export declare function safeOperation(value: string, fallback?: string): string;
87
+ /** Attach the span created at an HTTP boundary for downstream application seams. */
88
+ export declare function attachRequestTraceContext<RequestObject extends object>(request: RequestObject, context: TraceContext): void;
89
+ export declare function requestTraceContext<RequestObject extends object>(request: RequestObject): TraceContext | undefined;
90
+ /** An Effect `Tracer` span behind the same attribute, event and redaction bounds as every other signal. */
91
+ export declare class TelemetrySpan {
92
+ private readonly telemetry;
93
+ readonly name: string;
94
+ readonly span: Tracer.Span;
95
+ readonly parentSpanId: string | undefined;
96
+ readonly startTimeUnixMs: number;
97
+ private readonly order;
98
+ readonly context: TraceContext;
99
+ private readonly attributes;
100
+ private readonly events;
101
+ private ended;
102
+ private status;
103
+ private errorType;
104
+ constructor(telemetry: Telemetry, name: string, span: Tracer.Span, parentSpanId: string | undefined, traceFlags: string, startTimeUnixMs: number, order: number, attributes: TelemetryAttributes);
105
+ setAttribute<ValueType>(key: string, value: ValueType): this;
106
+ setAttributes(attributes: TelemetryAttributes): this;
107
+ addEvent(name: string, attributes?: TelemetryAttributes): this;
108
+ recordException<ErrorType>(error: ErrorType): this;
109
+ end(status?: SpanStatus): void;
110
+ }
111
+ /** The process's Effect services that receive spans and logs: an OTLP tracer and loggers, or JSON log lines. */
112
+ type TelemetryExport = Context.Context<never>;
113
+ export declare class Telemetry {
114
+ readonly serviceName: string;
115
+ readonly metricRegistry: Metric.MetricRegistry;
116
+ private readonly metricServices;
117
+ /** The latest finished spans with their start order, written round the ring. */
118
+ private readonly spans;
119
+ private finishedSpans;
120
+ private readonly series;
121
+ private readonly maxSpans;
122
+ private readonly maxSeries;
123
+ private readonly reservedSeriesLimit;
124
+ private reservedSeries;
125
+ private readonly clock;
126
+ private exportServices;
127
+ private recordSpans;
128
+ private recordMetrics;
129
+ private recordLogs;
130
+ private propagateTrace;
131
+ private nextSpanOrder;
132
+ private recordingOverflow;
133
+ constructor(input: {
134
+ readonly serviceName: string;
135
+ readonly clock?: () => number;
136
+ readonly maxSpans?: number;
137
+ readonly maxMetricSeries?: number;
138
+ readonly metricRegistry?: Metric.MetricRegistry;
139
+ });
140
+ setExport(services: TelemetryExport | undefined): void;
141
+ /** Disable span retention/export while keeping trace context propagation and RED metrics available. */
142
+ setSpanRecordingEnabled(enabled: boolean): void;
143
+ setMetricsEnabled(enabled: boolean): void;
144
+ setLogRecordingEnabled(enabled: boolean): void;
145
+ setTracePropagationEnabled(enabled: boolean): void;
146
+ isTracePropagationEnabled(): boolean;
147
+ now(): number;
148
+ startSpan(name: string, options?: {
149
+ readonly parent?: TraceContext | string | null;
150
+ readonly attributes?: TelemetryAttributes;
151
+ }): TelemetrySpan;
152
+ counter(name: string, labels?: TelemetryLabelInput, value?: number): void;
153
+ gauge(name: string, value: number, labels?: TelemetryLabelInput): void;
154
+ histogram(name: string, value: number, labels?: TelemetryLabelInput): void;
155
+ log(event: string, fields?: TelemetryAttributes, span?: TelemetrySpan): void;
156
+ overflow(signal: string, reason: string): void;
157
+ prometheus(): string;
158
+ snapshot(): TelemetrySnapshot;
159
+ finishSpan(span: SpanRecord, order: number): void;
160
+ private record;
161
+ /** Admits a new label set while the series bounds hold, keeping room for the non-HTTP metrics. */
162
+ private admitSeries;
163
+ }
164
+ export declare function registerProcessTelemetry(telemetry: Telemetry): Telemetry;
165
+ /** Returns one bounded recorder per service process for library seams. */
166
+ export declare function getProcessTelemetry(serviceName: string): Telemetry;
167
+ /** Prometheus exposition of every registered service, each metric family once. */
168
+ export declare function processTelemetryPrometheus(): string;
169
+ /**
170
+ * Exports the process's telemetry while the layer is alive, and provides the same tracer and loggers to the effects
171
+ * it is provided to. With `OTEL_EXPORTER_OTLP_ENDPOINT` set, spans, logs and the process metric registry go to that
172
+ * OTLP/HTTP collector; otherwise logs are written to stdout as JSON lines and spans stay in process.
173
+ */
174
+ export declare const layerProcessTelemetryExport: (serviceName: string) => Layer.Layer<never, Config.ConfigError>;
175
+ export {};