@serve.zone/interfaces 23.2.0 → 24.0.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/changelog.md +9 -0
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/appstore/types.d.ts +2 -2
- package/dist_ts/appstore/types.js +1 -1
- package/dist_ts/data/clusternode.d.ts +85 -0
- package/dist_ts/data/clusternode.js +355 -1
- package/dist_ts/data/secret.d.ts +51 -4
- package/dist_ts/data/secret.js +326 -10
- package/dist_ts/requests/secret.d.ts +33 -6
- package/dist_ts/requests/secret.js +198 -1
- package/dist_ts/runtime.d.ts +52 -29
- package/dist_ts/runtime.js +239 -94
- package/dist_ts/runtime.workloadinit.d.ts +129 -0
- package/dist_ts/runtime.workloadinit.js +405 -0
- package/package.json +1 -1
- package/readme.md +45 -17
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/appstore/types.ts +2 -2
- package/ts/data/clusternode.ts +513 -0
- package/ts/data/secret.ts +402 -16
- package/ts/requests/secret.ts +248 -6
- package/ts/runtime.ts +366 -141
- package/ts/runtime.workloadinit.ts +582 -0
package/dist_ts/data/secret.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import * as plugins from '../plugins.js';
|
|
|
2
2
|
import type { TSha256Digest } from './immutableimage.js';
|
|
3
3
|
export type TSecretEnvironment = string;
|
|
4
4
|
export type TSecretLifecycleState = 'active' | 'retired' | 'revoked' | 'deleted';
|
|
5
|
-
export type TSecretVersionLifecycleState = 'active' | 'retired' | 'revoked' | 'purged';
|
|
5
|
+
export type TSecretVersionLifecycleState = 'active' | 'retired' | 'revoked' | 'purge-pending' | 'purged';
|
|
6
6
|
/** Retired versions remain usable only through an already-accepted manifest. */
|
|
7
7
|
export declare const isSecretVersionMaterialIssuable: (lifecycleStateArg: TSecretVersionLifecycleState, referencedByAcceptedManifestArg: boolean) => boolean;
|
|
8
8
|
export type TSecretManagementSource = 'operator' | 'appstore' | 'mail' | 'oidc' | 'webpush' | 'platform' | 'system';
|
|
@@ -36,6 +36,9 @@ export interface ISecretVersionRetentionReference {
|
|
|
36
36
|
resourceId: string;
|
|
37
37
|
expiresAt?: number;
|
|
38
38
|
}
|
|
39
|
+
export declare const secretVersionRetentionReferenceLimits: Readonly<{
|
|
40
|
+
pageSizeMaximum: 256;
|
|
41
|
+
}>;
|
|
39
42
|
/** Browser-safe logical secret metadata. It never contains value material. */
|
|
40
43
|
export interface ISecretMetadata {
|
|
41
44
|
id: string;
|
|
@@ -65,14 +68,53 @@ export interface ISecretMetadata {
|
|
|
65
68
|
export interface ISecretVersionMetadata {
|
|
66
69
|
id: string;
|
|
67
70
|
secretId: string;
|
|
71
|
+
revision: number;
|
|
68
72
|
lifecycleState: TSecretVersionLifecycleState;
|
|
69
73
|
createdAt: number;
|
|
70
74
|
createdBy: string;
|
|
71
75
|
source: TSecretManagementSource;
|
|
72
76
|
retiredAt?: number;
|
|
73
77
|
revokedAt?: number;
|
|
78
|
+
purgeOperationId?: string;
|
|
74
79
|
purgedAt?: number;
|
|
75
80
|
}
|
|
81
|
+
/** Irreversibly erases every platform-managed copy after all references are gone. */
|
|
82
|
+
export interface ISecretVersionPurgeIntentV1 {
|
|
83
|
+
schemaVersion: 1;
|
|
84
|
+
mutationId: string;
|
|
85
|
+
secretId: string;
|
|
86
|
+
secretVersionId: string;
|
|
87
|
+
expectedSecretRevision: number;
|
|
88
|
+
expectedSecretVersionRevision: number;
|
|
89
|
+
expectedTargetSecretsRevision: number;
|
|
90
|
+
}
|
|
91
|
+
export interface ISecretVersionPurgeFailureV1 {
|
|
92
|
+
code: string;
|
|
93
|
+
retryable: boolean;
|
|
94
|
+
failedAt: number;
|
|
95
|
+
}
|
|
96
|
+
interface ISecretVersionPurgeOperationBaseV1 {
|
|
97
|
+
schemaVersion: 1;
|
|
98
|
+
id: string;
|
|
99
|
+
revision: number;
|
|
100
|
+
intent: ISecretVersionPurgeIntentV1;
|
|
101
|
+
intentDigest: TSha256Digest;
|
|
102
|
+
createdAt: number;
|
|
103
|
+
updatedAt: number;
|
|
104
|
+
}
|
|
105
|
+
export type TSecretVersionPurgeOperationV1 = (ISecretVersionPurgeOperationBaseV1 & {
|
|
106
|
+
state: 'pending' | 'erasing';
|
|
107
|
+
failure?: never;
|
|
108
|
+
purgedAt?: never;
|
|
109
|
+
}) | (ISecretVersionPurgeOperationBaseV1 & {
|
|
110
|
+
state: 'failed';
|
|
111
|
+
failure: ISecretVersionPurgeFailureV1;
|
|
112
|
+
purgedAt?: never;
|
|
113
|
+
}) | (ISecretVersionPurgeOperationBaseV1 & {
|
|
114
|
+
state: 'succeeded';
|
|
115
|
+
failure?: never;
|
|
116
|
+
purgedAt: number;
|
|
117
|
+
});
|
|
76
118
|
export interface ISecretSetMetadata {
|
|
77
119
|
id: string;
|
|
78
120
|
organizationId: string;
|
|
@@ -219,9 +261,17 @@ export interface IServiceSecretDeploymentPlan {
|
|
|
219
261
|
export declare const resolvedSecretManifestReferencesEqual: (leftArg: IResolvedSecretManifestReference | undefined, rightArg: IResolvedSecretManifestReference | undefined) => boolean;
|
|
220
262
|
export declare const isResolvedSecretManifestReferenceAccepted: (stateArg: IClusterSecretDeploymentState, referenceArg: IResolvedSecretManifestReference, nowArg: number) => boolean;
|
|
221
263
|
export declare const validateSecretMutationId: (mutationIdArg: unknown) => string[];
|
|
264
|
+
export declare const validateSecretVersionRetentionReferences: (referencesArg: unknown) => string[];
|
|
265
|
+
export declare const validateSecretVersionMetadata: (versionArg: unknown) => string[];
|
|
266
|
+
export declare const validateSecretVersionPurgeIntent: (intentArg: unknown) => string[];
|
|
267
|
+
export declare const createSecretVersionPurgeIntentDigestInput: (intentArg: ISecretVersionPurgeIntentV1) => string;
|
|
268
|
+
export declare const computeSecretVersionPurgeIntentDigest: (intentArg: ISecretVersionPurgeIntentV1) => Promise<TSha256Digest>;
|
|
269
|
+
export declare const verifySecretVersionPurgeIntentDigest: (intentArg: ISecretVersionPurgeIntentV1, digestArg: unknown) => Promise<boolean>;
|
|
270
|
+
export declare const validateSecretVersionPurgeOperation: (operationArg: unknown) => Promise<string[]>;
|
|
222
271
|
export declare const validateSecretOwner: (ownerArg: unknown) => string[];
|
|
223
272
|
export declare const validateSecretManagementScope: (sourceArg: TSecretManagementSource, scopeArg: unknown) => string[];
|
|
224
273
|
export declare const validateSecretDelivery: (deliveryArg: unknown) => string[];
|
|
274
|
+
export declare const validateSecretMetadata: (secretArg: unknown) => string[];
|
|
225
275
|
export declare const validateSecretValueInput: (valueInputArg: unknown) => string[];
|
|
226
276
|
/** Checks the SmartCrypto context digest without opening or decrypting the envelope. */
|
|
227
277
|
export declare const verifySecretEnvelopeContext: (envelopeArg: unknown, contextArg: unknown) => Promise<boolean>;
|
|
@@ -316,7 +366,6 @@ export interface IRevokedSecretRecipientMetadata extends ISecretRecipientMetadat
|
|
|
316
366
|
revokedAt: number;
|
|
317
367
|
}
|
|
318
368
|
export type TSecretRecipientMetadata = IActiveSecretRecipientMetadata | IRetiringSecretRecipientMetadata | IRevokedSecretRecipientMetadata;
|
|
319
|
-
export type TSecretIngressRecipient = TSecretRecipientMetadata;
|
|
320
369
|
export declare const secretRecipientLimits: Readonly<{
|
|
321
370
|
maximumRecipients: 64;
|
|
322
371
|
}>;
|
|
@@ -325,8 +374,6 @@ export declare const validateSecretRecipientSet: (recipientsArg: unknown) => str
|
|
|
325
374
|
/** New envelopes target only active recipients. */
|
|
326
375
|
export declare const canIssueNewSecretEnvelope: (recipientArg: TSecretRecipientMetadata) => boolean;
|
|
327
376
|
export declare const validateSecretValueInputForRecipient: (valueInputArg: unknown, recipientArg: TSecretRecipientMetadata, expectedContextArg: Uint8Array) => Promise<string[]>;
|
|
328
|
-
/** Retiring recipients open only already-issued envelopes before their deadline. */
|
|
329
|
-
export declare const canOpenIssuedSecretEnvelope: (recipientArg: TSecretRecipientMetadata, issuedAtArg: number, nowArg: number) => boolean;
|
|
330
377
|
export declare const createSecretCreateEnvelopeContext: (contextArg: {
|
|
331
378
|
mutationId: string;
|
|
332
379
|
target: TSecretMutationTarget;
|