@workos/oagen 0.3.0 → 0.4.0

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.
package/dist/smoke.d.mts CHANGED
@@ -1,3 +1,131 @@
1
+ //#region src/ir/sdk-behavior.d.ts
2
+ /**
3
+ * SDK Behavior IR — language-agnostic runtime policies for generated SDKs.
4
+ *
5
+ * These types capture the "what" of SDK behavior (retry, telemetry, errors, etc.)
6
+ * while emitters provide the "how" (language-specific mechanism).
7
+ *
8
+ * Emitters access these via `ctx.spec.sdk` — always populated, never undefined.
9
+ */
10
+ /** Retry policy — when and how to retry failed requests. */
11
+ interface RetryPolicy {
12
+ /** HTTP status codes that trigger a retry. */
13
+ retryableStatusCodes: number[];
14
+ /** Maximum number of retry attempts (0 = no retries). */
15
+ maxRetries: number;
16
+ /** Whether to retry on connection errors (DNS failure, TCP reset). */
17
+ retryOnConnectionError: boolean;
18
+ /** Whether to retry on timeout errors. */
19
+ retryOnTimeout: boolean;
20
+ /** Backoff strategy between retries. */
21
+ backoff: BackoffStrategy;
22
+ }
23
+ /** Exponential backoff configuration.
24
+ *
25
+ * Formula: `delay = min(initialDelay * multiplier^attempt, maxDelay)`
26
+ * With jitter: `delay += delay * jitterFactor * random(0, 1)`
27
+ */
28
+ interface BackoffStrategy {
29
+ /** Initial delay in seconds before the first retry. */
30
+ initialDelay: number;
31
+ /** Multiplier applied to the delay on each subsequent retry. */
32
+ multiplier: number;
33
+ /** Maximum delay in seconds (cap). */
34
+ maxDelay: number;
35
+ /** Jitter factor (0..1). 0.5 means up to 50% random jitter added. */
36
+ jitterFactor: number;
37
+ }
38
+ /** Error mapping — status codes to named exception kinds. */
39
+ interface ErrorPolicy {
40
+ /** Map from HTTP status code to a logical error kind name (e.g. 400 → 'BadRequest').
41
+ * Emitters append language-specific suffixes (e.g. 'BadRequestException'). */
42
+ statusCodeMap: Record<number, string>;
43
+ /** Catch-all error kind for 5xx status codes not in the map. */
44
+ serverErrorKind: string;
45
+ /** Catch-all error kind for unrecognized status codes. */
46
+ clientErrorKind: string;
47
+ /** URL template for error documentation. Use {code} as placeholder for the API error code.
48
+ * Example: 'https://workos.com/docs/errors/{code}' */
49
+ errorDocUrlTemplate?: string;
50
+ }
51
+ /** Telemetry — what request metrics to track and send. */
52
+ interface TelemetryPolicy {
53
+ /** Whether telemetry is enabled by default. Users can opt out via constructor param. */
54
+ enabledByDefault: boolean;
55
+ /** Header name for client telemetry data (previous request's ID + latency). */
56
+ headerName: string;
57
+ /** Response header name for the request ID. */
58
+ requestIdHeader: string;
59
+ }
60
+ /** Pagination behavior defaults. */
61
+ interface PaginationPolicy {
62
+ /** Delay in milliseconds between pages during auto-pagination. 0 = no delay. */
63
+ autoPageDelayMs: number;
64
+ }
65
+ /** Idempotency auto-generation rules. */
66
+ interface IdempotencyPolicy {
67
+ /** Header name for the idempotency key. */
68
+ headerName: string;
69
+ /** Whether to auto-generate a UUID v4 idempotency key for POST requests when retries > 0. */
70
+ autoGenerateForPost: boolean;
71
+ }
72
+ /** Logging contract — what to log at which level. */
73
+ interface LoggingPolicy {
74
+ /** Whether structured logging hooks are generated. */
75
+ enabled: boolean;
76
+ /** Log events that the generated client emits. */
77
+ events: LogEvent[];
78
+ }
79
+ /** A discrete loggable event in the request lifecycle. */
80
+ type LogEvent = 'request.start' | 'request.success' | 'request.retry' | 'request.rate_limited' | 'request.error' | 'request.connection_error';
81
+ /** User-Agent construction rules. */
82
+ interface UserAgentPolicy {
83
+ /** Template for the SDK identifier string.
84
+ * Placeholders: {name} = spec name, {lang} = emitter language, {version} = SDK version.
85
+ * Each emitter interpolates with its own language string and casing conventions.
86
+ * Example: '{name} {lang}/{version}' → 'WorkOS PHP/4.32.0' */
87
+ sdkIdentifierTemplate: string;
88
+ /** Whether to append the runtime/language version (e.g. PHP 8.2, Python 3.12). */
89
+ includeRuntimeVersion: boolean;
90
+ /** Whether to allow app info enrichment via setAppInfo(name, version, url). */
91
+ allowAppInfo: boolean;
92
+ /** AI agent environment variable detection entries. */
93
+ aiAgentEnvVars: AiAgentEnvVar[];
94
+ }
95
+ /** Maps an environment variable to an AI agent slug for User-Agent enrichment. */
96
+ interface AiAgentEnvVar {
97
+ /** Environment variable to check (e.g. 'CLAUDE_CODE'). */
98
+ envVar: string;
99
+ /** Agent name to append to User-Agent (e.g. 'ClaudeCode'). */
100
+ agentName: string;
101
+ }
102
+ /** Guards that validate request params before sending. */
103
+ interface RequestGuardPolicy {
104
+ /** Keys that should be in RequestOptions, not in params.
105
+ * If detected in the body or query params, the SDK throws an error. */
106
+ optionKeys: string[];
107
+ }
108
+ /** Timeout configuration. */
109
+ interface TimeoutPolicy {
110
+ /** Default HTTP request timeout in seconds. */
111
+ defaultTimeoutSeconds: number;
112
+ /** Environment variable name to override the timeout (e.g. 'WORKOS_REQUEST_TIMEOUT'). */
113
+ timeoutEnvVar?: string;
114
+ }
115
+ /** Language-agnostic runtime policies for generated SDKs.
116
+ * Attached to `ApiSpec.sdk` and consumed by emitters via `ctx.spec.sdk`. */
117
+ interface SdkBehavior {
118
+ retry: RetryPolicy;
119
+ errors: ErrorPolicy;
120
+ telemetry: TelemetryPolicy;
121
+ pagination: PaginationPolicy;
122
+ idempotency: IdempotencyPolicy;
123
+ logging: LoggingPolicy;
124
+ userAgent: UserAgentPolicy;
125
+ requestGuard: RequestGuardPolicy;
126
+ timeout: TimeoutPolicy;
127
+ }
128
+ //#endregion
1
129
  //#region src/ir/types.d.ts
2
130
  /** Authentication scheme extracted from OpenAPI securitySchemes */
3
131
  type AuthScheme = {
@@ -27,6 +155,8 @@ interface ApiSpec {
27
155
  models: Model[];
28
156
  enums: Enum[];
29
157
  auth?: AuthScheme[];
158
+ /** Language-agnostic runtime policies (retry, errors, telemetry, etc.). */
159
+ sdk: SdkBehavior;
30
160
  }
31
161
  /** A service groups related operations (maps to an SDK resource class) */
32
162
  interface Service {
@@ -35,6 +165,11 @@ interface Service {
35
165
  operations: Operation[];
36
166
  }
37
167
  /** A single API operation (maps to an SDK method) */
168
+ /** Per-operation security requirement: scheme name → scope list. */
169
+ interface SecurityRequirement {
170
+ schemeName: string;
171
+ scopes: string[];
172
+ }
38
173
  interface Operation {
39
174
  name: string;
40
175
  description?: string;
@@ -53,6 +188,8 @@ interface Operation {
53
188
  injectIdempotencyKey: boolean;
54
189
  deprecated?: boolean;
55
190
  async?: boolean;
191
+ /** Per-operation security overrides. When present, overrides the global spec-level security. */
192
+ security?: SecurityRequirement[];
56
193
  }
57
194
  /** Structured pagination metadata for auto-paging iterator generation */
58
195
  interface PaginationMeta {
@@ -169,6 +306,7 @@ interface SuccessResponse {
169
306
  //#region src/parser/parse.d.ts
170
307
  interface ParseOptions {
171
308
  operationIdTransform?: (id: string) => string;
309
+ schemaNameTransform?: (name: string) => string;
172
310
  }
173
311
  declare function parseSpec(specPath: string, options?: ParseOptions): Promise<ApiSpec>;
174
312
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"smoke.d.mts","names":[],"sources":["../src/ir/types.ts","../src/parser/parse.ts","../src/utils/naming.ts","../scripts/smoke/shared.ts"],"mappings":"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"}
1
+ {"version":3,"file":"smoke.d.mts","names":[],"sources":["../src/ir/sdk-behavior.ts","../src/ir/types.ts","../src/parser/parse.ts","../src/utils/naming.ts","../scripts/smoke/shared.ts"],"mappings":"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"}