@fabrika/control-contract 0.8.2 → 0.9.0-cloudflare.2
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/package.json +7 -6
- package/src/access.ts +12 -0
- package/src/index.ts +34 -0
- package/src/rpc.ts +125 -1
- package/types/src/access.d.ts +68 -0
- package/types/src/builder-bootstrap.d.ts +41 -0
- package/types/src/builder-connections.d.ts +223 -0
- package/types/src/builder-pairing.d.ts +12 -0
- package/types/src/index.d.ts +510 -0
- package/types/src/mail.d.ts +90 -0
- package/types/src/rpc.d.ts +341 -0
- package/types/src/source-connection-list.d.ts +20 -0
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
import type { RpcProcedureContract } from '@fabrika/app';
|
|
2
|
+
import type { ExportDescription, OpsContentView, OpsView } from '@fabrika/auth-core';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import type { BuilderConnectionReceiptDto, CreateBuilderConnectionReceiptRequest, GetBuilderConnectionReceiptRequest } from './builder-connections.js';
|
|
5
|
+
import type { ApproveDeviceAuthorizationResult, BuilderPairingProofRequest, DenyDeviceAuthorizationResult, InspectDeviceAuthorizationResult, ListOwnBuilderPairingsRequest, ListOwnDeviceAuthorizationsResult, RevokeBuilderPairingRequest, RevokeKeyResult } from './builder-pairing.js';
|
|
6
|
+
import type { AdoptDeploymentNamespaceRequest, AppDto, AppEnvDto, ApprovalDto, AppSecretDto, AppVarDto, CompleteApprovalRequest, ConsoleAccessDto, CreateDeploymentNamespaceRequest, CursorList, DeploymentNamespaceDetailDto, DeploymentNamespaceListResponse, GitHubSourceConnectionListInput, GitHubSourceConnectionListResponse, GitHubSourceConnectionStatusDto, InstallationDto, ListResponse, PlanDeploymentNamespaceRequest, PlanDeploymentNamespaceResponse, PutAppEnvRequest, PutAppSecretRequest, PutAppVarRequest, RegisterAppRequest, RegisterAppResponse, ReleaseNamespaceClaimsResponse, RemoveDeploymentNamespaceResponse, RepublishAllNamespacesResponse, RunDto, RunLogResponse, RunStatus, RunTailResponse, SetEnvironmentProtectionRequest, StartGitHubSourceConnectionRequest, StartGitHubSourceConnectionResponse, TriggerDeployRequest, UpdateAppRequest, UpdateDeploymentNamespaceRequest } from './index.js';
|
|
7
|
+
import type { MailMessageDetailDto, MailMessageDto, MailMessageIdInput, MailMessageListInput, MailRuleDto, MailRuleIdInput, SetMailRuleInput } from './mail.js';
|
|
8
|
+
type RpcProcedure<TInput, TOutput> = RpcProcedureContract<TInput, TOutput>;
|
|
9
|
+
export interface AppIdInput {
|
|
10
|
+
readonly appId: string;
|
|
11
|
+
}
|
|
12
|
+
/** Whether a rotation was recorded: `false` while the environment holds no token key. */
|
|
13
|
+
export interface RotateTokenKeyResponse {
|
|
14
|
+
readonly requested: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface AppEnvironmentInput extends AppIdInput {
|
|
17
|
+
readonly env: string;
|
|
18
|
+
}
|
|
19
|
+
export interface AppNamedValueInput extends AppIdInput {
|
|
20
|
+
readonly name: string;
|
|
21
|
+
readonly env?: string | null;
|
|
22
|
+
}
|
|
23
|
+
export interface CreateAppRequest extends UpdateAppRequest {
|
|
24
|
+
readonly id: string;
|
|
25
|
+
readonly repoUrl: string;
|
|
26
|
+
}
|
|
27
|
+
export interface PutAppEnvironmentInput extends AppEnvironmentInput {
|
|
28
|
+
readonly environment: PutAppEnvRequest;
|
|
29
|
+
}
|
|
30
|
+
export interface PutAppSecretInput extends AppIdInput {
|
|
31
|
+
readonly secret: PutAppSecretRequest;
|
|
32
|
+
}
|
|
33
|
+
export interface PutAppVarInput extends AppIdInput {
|
|
34
|
+
readonly variable: PutAppVarRequest;
|
|
35
|
+
}
|
|
36
|
+
export interface SecretValueInput extends AppNamedValueInput {
|
|
37
|
+
readonly value: string;
|
|
38
|
+
}
|
|
39
|
+
export interface SecretValueResponse {
|
|
40
|
+
readonly ok: boolean;
|
|
41
|
+
readonly valueRef?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface OkResponse {
|
|
44
|
+
readonly ok: boolean;
|
|
45
|
+
}
|
|
46
|
+
export interface NamespaceIdInput {
|
|
47
|
+
readonly namespaceId: string;
|
|
48
|
+
}
|
|
49
|
+
export interface AdoptNamespaceInput extends NamespaceIdInput {
|
|
50
|
+
readonly namespace: AdoptDeploymentNamespaceRequest;
|
|
51
|
+
}
|
|
52
|
+
export interface UpdateNamespaceInput extends NamespaceIdInput {
|
|
53
|
+
readonly namespace: UpdateDeploymentNamespaceRequest;
|
|
54
|
+
}
|
|
55
|
+
/** The app environment whose claims in the namespace are released. */
|
|
56
|
+
export interface ReleaseNamespaceClaimsInput extends NamespaceIdInput {
|
|
57
|
+
readonly appId: string;
|
|
58
|
+
readonly env: string;
|
|
59
|
+
}
|
|
60
|
+
export interface RunListInput {
|
|
61
|
+
readonly appId?: string;
|
|
62
|
+
readonly env?: string;
|
|
63
|
+
/** Filter before pagination, so an old queued or running deploy is not hidden by newer finished runs. */
|
|
64
|
+
readonly statuses?: RunStatus[];
|
|
65
|
+
readonly before?: string;
|
|
66
|
+
readonly limit?: number;
|
|
67
|
+
}
|
|
68
|
+
export interface RunIdInput {
|
|
69
|
+
readonly runId: string;
|
|
70
|
+
}
|
|
71
|
+
export interface TailRunInput extends RunIdInput {
|
|
72
|
+
readonly after?: number;
|
|
73
|
+
}
|
|
74
|
+
export interface GitHubSourceConnectionInput {
|
|
75
|
+
readonly connectionId: string;
|
|
76
|
+
}
|
|
77
|
+
/** Provider-neutral admin seam. A statically composed provider implements these GitHub operations. */
|
|
78
|
+
export interface GitHubSourceConnectionRpcContract {
|
|
79
|
+
list: RpcProcedure<GitHubSourceConnectionListInput, GitHubSourceConnectionListResponse>;
|
|
80
|
+
start: RpcProcedure<StartGitHubSourceConnectionRequest, StartGitHubSourceConnectionResponse>;
|
|
81
|
+
verifyInstallation: RpcProcedure<GitHubSourceConnectionInput, GitHubSourceConnectionStatusDto>;
|
|
82
|
+
repair: RpcProcedure<GitHubSourceConnectionInput, GitHubSourceConnectionStatusDto>;
|
|
83
|
+
reconcile: RpcProcedure<GitHubSourceConnectionInput, GitHubSourceConnectionStatusDto>;
|
|
84
|
+
}
|
|
85
|
+
/** Portable Delivery control API shared by browser and machine callers. */
|
|
86
|
+
export interface ControlRpcContract {
|
|
87
|
+
installation: RpcProcedure<void, InstallationDto>;
|
|
88
|
+
consoleAccess: RpcProcedure<void, ConsoleAccessDto>;
|
|
89
|
+
builderPairing: {
|
|
90
|
+
inspect: RpcProcedure<BuilderPairingProofRequest, InspectDeviceAuthorizationResult>;
|
|
91
|
+
approve: RpcProcedure<BuilderPairingProofRequest, ApproveDeviceAuthorizationResult>;
|
|
92
|
+
deny: RpcProcedure<BuilderPairingProofRequest, DenyDeviceAuthorizationResult>;
|
|
93
|
+
listOwn: RpcProcedure<ListOwnBuilderPairingsRequest, ListOwnDeviceAuthorizationsResult>;
|
|
94
|
+
revoke: RpcProcedure<RevokeBuilderPairingRequest, RevokeKeyResult>;
|
|
95
|
+
};
|
|
96
|
+
builderConnections: {
|
|
97
|
+
createReceipt: RpcProcedure<CreateBuilderConnectionReceiptRequest, BuilderConnectionReceiptDto>;
|
|
98
|
+
getReceipt: RpcProcedure<GetBuilderConnectionReceiptRequest, BuilderConnectionReceiptDto>;
|
|
99
|
+
};
|
|
100
|
+
sourceConnection: GitHubSourceConnectionRpcContract;
|
|
101
|
+
apps: {
|
|
102
|
+
list: RpcProcedure<void, ListResponse<AppDto>>;
|
|
103
|
+
get: RpcProcedure<AppIdInput, AppDto>;
|
|
104
|
+
create: RpcProcedure<CreateAppRequest, AppDto>;
|
|
105
|
+
update: RpcProcedure<AppIdInput & {
|
|
106
|
+
app: UpdateAppRequest;
|
|
107
|
+
}, AppDto>;
|
|
108
|
+
delete: RpcProcedure<AppIdInput, OkResponse>;
|
|
109
|
+
environments: {
|
|
110
|
+
list: RpcProcedure<AppIdInput, ListResponse<AppEnvDto>>;
|
|
111
|
+
put: RpcProcedure<PutAppEnvironmentInput, AppEnvDto>;
|
|
112
|
+
delete: RpcProcedure<AppEnvironmentInput, OkResponse>;
|
|
113
|
+
/** Human user principals with `access.approve` only, from the console (ADR-0050 §4). */
|
|
114
|
+
protect: RpcProcedure<SetEnvironmentProtectionRequest, AppEnvDto>;
|
|
115
|
+
/** The environment's next deploy retires the key its signed tokens are signed with and signs with a new one. */
|
|
116
|
+
rotateTokenKey: RpcProcedure<AppEnvironmentInput, RotateTokenKeyResponse>;
|
|
117
|
+
};
|
|
118
|
+
secrets: {
|
|
119
|
+
list: RpcProcedure<AppIdInput, ListResponse<AppSecretDto>>;
|
|
120
|
+
put: RpcProcedure<PutAppSecretInput, AppSecretDto>;
|
|
121
|
+
/** Removes the value where it is stored (vault or provider), then the row; a failed value delete keeps the row. */
|
|
122
|
+
delete: RpcProcedure<AppNamedValueInput, OkResponse>;
|
|
123
|
+
};
|
|
124
|
+
variables: {
|
|
125
|
+
list: RpcProcedure<AppIdInput, ListResponse<AppVarDto>>;
|
|
126
|
+
put: RpcProcedure<PutAppVarInput, AppVarDto>;
|
|
127
|
+
delete: RpcProcedure<AppNamedValueInput, OkResponse>;
|
|
128
|
+
};
|
|
129
|
+
};
|
|
130
|
+
vault: {
|
|
131
|
+
set: RpcProcedure<SecretValueInput, SecretValueResponse>;
|
|
132
|
+
rotate: RpcProcedure<SecretValueInput, OkResponse>;
|
|
133
|
+
/** The same operation as `apps.secrets.delete`. */
|
|
134
|
+
delete: RpcProcedure<AppNamedValueInput, OkResponse>;
|
|
135
|
+
};
|
|
136
|
+
namespaces: {
|
|
137
|
+
list: RpcProcedure<void, DeploymentNamespaceListResponse>;
|
|
138
|
+
get: RpcProcedure<NamespaceIdInput, DeploymentNamespaceDetailDto>;
|
|
139
|
+
plan: RpcProcedure<PlanDeploymentNamespaceRequest, PlanDeploymentNamespaceResponse>;
|
|
140
|
+
create: RpcProcedure<CreateDeploymentNamespaceRequest, DeploymentNamespaceDetailDto>;
|
|
141
|
+
adopt: RpcProcedure<AdoptNamespaceInput, DeploymentNamespaceDetailDto>;
|
|
142
|
+
reconcile: RpcProcedure<NamespaceIdInput, DeploymentNamespaceDetailDto>;
|
|
143
|
+
/** Change a ready namespace in place, synchronously (backlog 79); also the retry after an unconfirmed update. */
|
|
144
|
+
update: RpcProcedure<UpdateNamespaceInput, DeploymentNamespaceDetailDto>;
|
|
145
|
+
/** Free a namespace id. Refused while any app environment is registered in it (backlog 73). */
|
|
146
|
+
remove: RpcProcedure<NamespaceIdInput, RemoveDeploymentNamespaceResponse>;
|
|
147
|
+
/**
|
|
148
|
+
* Republish the proxy of every ready namespace, as after a change of the installation's client logo (ADR-0066).
|
|
149
|
+
* Returns once each rebuild is submitted; a failure is a 502 naming the namespaces to reconcile.
|
|
150
|
+
*/
|
|
151
|
+
republishAll: RpcProcedure<void, RepublishAllNamespacesResponse>;
|
|
152
|
+
/**
|
|
153
|
+
* Release one app environment's resource claims in the namespace, only when the provider confirms every claimed
|
|
154
|
+
* resource gone. The operator deletes the resources first; fabrika deletes none (ADR-0034).
|
|
155
|
+
*/
|
|
156
|
+
releaseClaims: RpcProcedure<ReleaseNamespaceClaimsInput, ReleaseNamespaceClaimsResponse>;
|
|
157
|
+
};
|
|
158
|
+
runs: {
|
|
159
|
+
list: RpcProcedure<RunListInput, CursorList<RunDto>>;
|
|
160
|
+
/** Per app environment, its newest finished run when that run failed: a later finished run supersedes a failure. */
|
|
161
|
+
latestFailures: RpcProcedure<void, ListResponse<RunDto>>;
|
|
162
|
+
get: RpcProcedure<RunIdInput, RunDto>;
|
|
163
|
+
log: RpcProcedure<RunIdInput, RunLogResponse>;
|
|
164
|
+
tail: RpcProcedure<TailRunInput, RunTailResponse>;
|
|
165
|
+
cancel: RpcProcedure<RunIdInput, RunDto>;
|
|
166
|
+
};
|
|
167
|
+
/** Runs whose access change waits for a human (ADR-0050 §5), behind `access.approve`. */
|
|
168
|
+
approvals: {
|
|
169
|
+
list: RpcProcedure<void, ListResponse<ApprovalDto>>;
|
|
170
|
+
get: RpcProcedure<RunIdInput, ApprovalDto>;
|
|
171
|
+
/** A human user principal, from the console's own origin; no key, service or OAuth token completes one. */
|
|
172
|
+
complete: RpcProcedure<CompleteApprovalRequest, ApprovalDto>;
|
|
173
|
+
};
|
|
174
|
+
deploy: RpcProcedure<TriggerDeployRequest, RunDto>;
|
|
175
|
+
register: RpcProcedure<RegisterAppRequest, RegisterAppResponse>;
|
|
176
|
+
/** What a consumer vendors (`fabrika connect add`): the export its owner's environment approved for it. */
|
|
177
|
+
connectors: {
|
|
178
|
+
describe: RpcProcedure<DescribeConnectorRequest, ExportDescription>;
|
|
179
|
+
};
|
|
180
|
+
/** The mail relay: `mail.read`, `mail.content.read` and `mail.manage`. */
|
|
181
|
+
mail: {
|
|
182
|
+
messages: {
|
|
183
|
+
list: RpcProcedure<MailMessageListInput, CursorList<MailMessageDto>>;
|
|
184
|
+
/** The content only with `mail.content.read`. */
|
|
185
|
+
get: RpcProcedure<MailMessageIdInput, MailMessageDetailDto>;
|
|
186
|
+
/** A held message only. */
|
|
187
|
+
release: RpcProcedure<MailMessageIdInput, MailMessageDto>;
|
|
188
|
+
/** A held message only. */
|
|
189
|
+
drop: RpcProcedure<MailMessageIdInput, MailMessageDto>;
|
|
190
|
+
/** A `failed` message, or an `unknown` one over an idempotent transport, whose content is kept. */
|
|
191
|
+
requeue: RpcProcedure<MailMessageIdInput, MailMessageDto>;
|
|
192
|
+
};
|
|
193
|
+
rules: {
|
|
194
|
+
list: RpcProcedure<void, ListResponse<MailRuleDto>>;
|
|
195
|
+
set: RpcProcedure<SetMailRuleInput, MailRuleDto>;
|
|
196
|
+
remove: RpcProcedure<MailRuleIdInput, OkResponse>;
|
|
197
|
+
};
|
|
198
|
+
};
|
|
199
|
+
/**
|
|
200
|
+
* An application environment's data (ADR-0069): `data.read` and `data.manage` at the coordinates,
|
|
201
|
+
* `data.content.read` as a global grant only; every denial is the 404 of an absent environment.
|
|
202
|
+
*/
|
|
203
|
+
data: {
|
|
204
|
+
operations: {
|
|
205
|
+
list: RpcProcedure<DataOperationListInput, CursorList<DataOperationDto>>;
|
|
206
|
+
get: RpcProcedure<{
|
|
207
|
+
operationId: string;
|
|
208
|
+
}, DataOperationDto>;
|
|
209
|
+
};
|
|
210
|
+
/** The metadata view; never content. */
|
|
211
|
+
view: RpcProcedure<AppEnvironmentInput, OpsView>;
|
|
212
|
+
content: RpcProcedure<AppEnvironmentInput, OpsContentView>;
|
|
213
|
+
start: RpcProcedure<StartDataOperationInput, DataOperationDto>;
|
|
214
|
+
recover: RpcProcedure<RecoverDataOperationInput, DataOperationDto>;
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* One export version of `app` as the environment `env` approved it, read for its consumer `consumer`. Unknown, not
|
|
219
|
+
* approved, or not exported to that consumer: 404 alike.
|
|
220
|
+
*/
|
|
221
|
+
export interface DescribeConnectorRequest {
|
|
222
|
+
readonly consumer: string;
|
|
223
|
+
readonly env: string;
|
|
224
|
+
readonly app: string;
|
|
225
|
+
readonly export: string;
|
|
226
|
+
readonly version: number;
|
|
227
|
+
}
|
|
228
|
+
/** What an application environment's object admits (ADR-0069 §3). */
|
|
229
|
+
export type MaintenanceMode = 'open' | 'read-only' | 'closed' | 'inspect';
|
|
230
|
+
export type DataOperationKind = 'maintenance' | 'backup' | 'migrate' | 'recovery' | 'restore';
|
|
231
|
+
/**
|
|
232
|
+
* Where an operation stands: `reconcile` reads the record and the object's published state (a recovery's first step),
|
|
233
|
+
* `restrict` publishes a generation in a restricting mode, `backup` and `verify` take and check a consistent backup,
|
|
234
|
+
* `deploy` runs the operation's own deploy, `migrate` runs the pending migrations, `resume` continues the interrupted
|
|
235
|
+
* operation from its recorded step, and `open` publishes the generation that opens the object.
|
|
236
|
+
*/
|
|
237
|
+
export type DataOperationStep = 'reconcile' | 'restrict' | 'backup' | 'verify' | 'deploy' | 'migrate' | 'resume' | 'open';
|
|
238
|
+
export type DataOperationState = 'running' | 'succeeded' | 'failed';
|
|
239
|
+
/** What a recovery does after its closed fence: resume the interrupted operation, or open the object. */
|
|
240
|
+
export type DataOperationResolution = 'resume' | 'open';
|
|
241
|
+
/**
|
|
242
|
+
* One operation as `data.read` shows it: an allowlisted projection of Control's record, with identifiers, states,
|
|
243
|
+
* codes and timestamps only. It carries no free text and no content.
|
|
244
|
+
*/
|
|
245
|
+
export interface DataOperationDto {
|
|
246
|
+
readonly id: string;
|
|
247
|
+
readonly appId: string;
|
|
248
|
+
readonly env: string;
|
|
249
|
+
readonly kind: DataOperationKind;
|
|
250
|
+
readonly step: DataOperationStep;
|
|
251
|
+
/** The mode the operation requires of the object at its step; a successor publishes its fresh generation in it. */
|
|
252
|
+
readonly targetMode: MaintenanceMode;
|
|
253
|
+
/** The latest generation the operation reserved. */
|
|
254
|
+
readonly generation: number;
|
|
255
|
+
readonly state: DataOperationState;
|
|
256
|
+
/** A code once it failed, never an error message. */
|
|
257
|
+
readonly errorCode: string | null;
|
|
258
|
+
/** An opaque principal id (as `runActor`), never an email or label. */
|
|
259
|
+
readonly actor: string;
|
|
260
|
+
readonly createdAt: number;
|
|
261
|
+
readonly updatedAt: number;
|
|
262
|
+
readonly finishedAt: number | null;
|
|
263
|
+
/** A recovery's interrupted operation, of the same environment; `null` for every other kind. */
|
|
264
|
+
readonly recoversOperationId: string | null;
|
|
265
|
+
/** A recovery's choice after its closed fence; `null` for every other kind. */
|
|
266
|
+
readonly resolution: DataOperationResolution | null;
|
|
267
|
+
}
|
|
268
|
+
export declare const DATA_OPERATION_MAX_PAGE_SIZE = 100;
|
|
269
|
+
/** One environment's operations, newest first; `before` is the last id of the previous page. */
|
|
270
|
+
export declare const dataOperationListInputSchema: z.ZodObject<{
|
|
271
|
+
appId: z.ZodString;
|
|
272
|
+
env: z.ZodString;
|
|
273
|
+
before: z.ZodOptional<z.ZodString>;
|
|
274
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
275
|
+
}, "strict", z.ZodTypeAny, {
|
|
276
|
+
env: string;
|
|
277
|
+
appId: string;
|
|
278
|
+
before?: string | undefined;
|
|
279
|
+
limit?: number | undefined;
|
|
280
|
+
}, {
|
|
281
|
+
env: string;
|
|
282
|
+
appId: string;
|
|
283
|
+
before?: string | undefined;
|
|
284
|
+
limit?: number | undefined;
|
|
285
|
+
}>;
|
|
286
|
+
export type DataOperationListInput = z.infer<typeof dataOperationListInputSchema>;
|
|
287
|
+
/**
|
|
288
|
+
* An operation a person starts. A migration starts inside a deploy and a recovery has its own request, so neither is
|
|
289
|
+
* started here.
|
|
290
|
+
*/
|
|
291
|
+
export declare const startDataOperationInputSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
|
|
292
|
+
appId: z.ZodString;
|
|
293
|
+
env: z.ZodString;
|
|
294
|
+
kind: z.ZodLiteral<"maintenance">;
|
|
295
|
+
mode: z.ZodEnum<["open", "read-only", "closed", "inspect"]>;
|
|
296
|
+
}, "strict", z.ZodTypeAny, {
|
|
297
|
+
env: string;
|
|
298
|
+
kind: "maintenance";
|
|
299
|
+
mode: "open" | "inspect" | "read-only" | "closed";
|
|
300
|
+
appId: string;
|
|
301
|
+
}, {
|
|
302
|
+
env: string;
|
|
303
|
+
kind: "maintenance";
|
|
304
|
+
mode: "open" | "inspect" | "read-only" | "closed";
|
|
305
|
+
appId: string;
|
|
306
|
+
}>, z.ZodObject<{
|
|
307
|
+
appId: z.ZodString;
|
|
308
|
+
env: z.ZodString;
|
|
309
|
+
kind: z.ZodLiteral<"backup">;
|
|
310
|
+
}, "strict", z.ZodTypeAny, {
|
|
311
|
+
env: string;
|
|
312
|
+
kind: "backup";
|
|
313
|
+
appId: string;
|
|
314
|
+
}, {
|
|
315
|
+
env: string;
|
|
316
|
+
kind: "backup";
|
|
317
|
+
appId: string;
|
|
318
|
+
}>]>;
|
|
319
|
+
export type StartDataOperationInput = z.infer<typeof startDataOperationInputSchema>;
|
|
320
|
+
/**
|
|
321
|
+
* Recover an environment whose operation `operationId` is stuck: fence it with a fresh generation in `closed`, then
|
|
322
|
+
* resume that operation from its recorded step, or open the object at a new generation.
|
|
323
|
+
*/
|
|
324
|
+
export declare const recoverDataOperationInputSchema: z.ZodObject<{
|
|
325
|
+
appId: z.ZodString;
|
|
326
|
+
env: z.ZodString;
|
|
327
|
+
operationId: z.ZodString;
|
|
328
|
+
resolution: z.ZodEnum<["resume", "open"]>;
|
|
329
|
+
}, "strict", z.ZodTypeAny, {
|
|
330
|
+
env: string;
|
|
331
|
+
appId: string;
|
|
332
|
+
operationId: string;
|
|
333
|
+
resolution: "open" | "resume";
|
|
334
|
+
}, {
|
|
335
|
+
env: string;
|
|
336
|
+
appId: string;
|
|
337
|
+
operationId: string;
|
|
338
|
+
resolution: "open" | "resume";
|
|
339
|
+
}>;
|
|
340
|
+
export type RecoverDataOperationInput = z.infer<typeof recoverDataOperationInputSchema>;
|
|
341
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const GITHUB_SOURCE_CONNECTION_DEFAULT_PAGE_SIZE = 50;
|
|
3
|
+
export declare const GITHUB_SOURCE_CONNECTION_MAX_PAGE_SIZE = 100;
|
|
4
|
+
export declare const GITHUB_SOURCE_CONNECTION_PAGE_CURSOR_MAX_LENGTH = 512;
|
|
5
|
+
export declare const githubSourceConnectionListInputSchema: z.ZodEffects<z.ZodObject<{
|
|
6
|
+
cursor: z.ZodOptional<z.ZodString>;
|
|
7
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
8
|
+
}, "strict", z.ZodTypeAny, {
|
|
9
|
+
limit?: number | undefined;
|
|
10
|
+
cursor?: string | undefined;
|
|
11
|
+
}, {
|
|
12
|
+
limit?: number | undefined;
|
|
13
|
+
cursor?: string | undefined;
|
|
14
|
+
}>, {
|
|
15
|
+
limit?: number | undefined;
|
|
16
|
+
cursor?: string | undefined;
|
|
17
|
+
}, {
|
|
18
|
+
limit?: number | undefined;
|
|
19
|
+
cursor?: string | undefined;
|
|
20
|
+
}>;
|