@oneidentity/safeguard 8.0.1 → 8.0.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.
@@ -1,670 +0,0 @@
1
- //#region src/http/types.d.ts
2
- /**
3
- * Platform-agnostic HTTP client interface for the Safeguard SDK.
4
- */
5
- interface HttpRequestOptions {
6
- url: string;
7
- method: string;
8
- headers?: Record<string, string>;
9
- body?: string | Buffer | null;
10
- signal?: AbortSignal;
11
- timeout?: number;
12
- }
13
- interface HttpResponse {
14
- status: number;
15
- headers: Record<string, string>;
16
- body: string;
17
- }
18
- interface TlsOptions {
19
- /** Custom CA certificate (PEM). */
20
- ca?: string | Buffer;
21
- /** Client certificate (PEM) for mTLS. */
22
- cert?: string | Buffer;
23
- /** Client private key (PEM) for mTLS. */
24
- key?: string | Buffer;
25
- /** Passphrase for encrypted private key. */
26
- passphrase?: string;
27
- /** Whether to verify server certificate. Default: true. */
28
- rejectUnauthorized?: boolean;
29
- }
30
- /**
31
- * Abstract HTTP client interface.
32
- * Implementations: NodeHttpClient (undici), BrowserHttpClient (fetch).
33
- */
34
- interface HttpClient {
35
- request(options: HttpRequestOptions): Promise<HttpResponse>;
36
- dispose?(): void;
37
- }
38
- //# sourceMappingURL=types.d.ts.map
39
- //#endregion
40
- //#region src/storage/types.d.ts
41
- /**
42
- * Interface for token/state storage backends.
43
- */
44
- interface StorageProvider {
45
- get(key: string): string | null;
46
- set(key: string, value: string): void;
47
- remove(key: string): void;
48
- clear(): void;
49
- }
50
- /** Well-known storage keys used by the SDK. */
51
- declare const StorageKeys: {
52
- readonly STATE: "safeguard_state";
53
- readonly CODE_VERIFIER: "safeguard_code_verifier";
54
- };
55
- //# sourceMappingURL=types.d.ts.map
56
- //#endregion
57
- //#region src/secret.d.ts
58
- /**
59
- * A wrapper that prevents accidental logging of sensitive values.
60
- *
61
- * - `toString()` returns "[REDACTED]"
62
- * - `toJSON()` returns "[REDACTED]"
63
- * - `console.log(secretValue)` prints "[REDACTED]"
64
- * - `.expose()` returns the raw value when intentionally needed
65
- */
66
- declare class SecretValue {
67
- #private;
68
- constructor(value: string);
69
- /** Returns the raw secret. Use only when you intentionally need the plaintext. */
70
- expose(): string;
71
- toString(): string;
72
- toJSON(): string;
73
- get [Symbol.toStringTag](): string;
74
- }
75
- //# sourceMappingURL=secret.d.ts.map
76
- //#endregion
77
- //#region src/auth/types.d.ts
78
- /**
79
- * Token set returned by authentication.
80
- */
81
- interface TokenSet {
82
- /** The Safeguard user access token (wrapped to prevent accidental logging). */
83
- accessToken: SecretValue;
84
- /** Token lifetime in seconds from when it was issued. */
85
- expiresIn?: number;
86
- /** Timestamp (ms since epoch) when the token was acquired. */
87
- acquiredAt: number;
88
- }
89
- /**
90
- * Auth strategy interface. All authentication methods implement this.
91
- */
92
- interface Auth {
93
- /**
94
- * Authenticate against the Safeguard RSTS and return a token set.
95
- * @param host - Appliance hostname
96
- * @param httpClient - HTTP client to use for requests
97
- * @param storage - Storage provider for persisting tokens/state
98
- */
99
- authenticate(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet>;
100
- /**
101
- * Refresh the token if possible. Returns new token set or null if refresh not supported.
102
- */
103
- refreshToken?(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet | null>;
104
- /** Human-readable description of this auth strategy (for logging). */
105
- readonly description: string;
106
- }
107
- //# sourceMappingURL=types.d.ts.map
108
- //#endregion
109
- //#region src/types.d.ts
110
- /**
111
- * Safeguard appliance service endpoints.
112
- */
113
- declare enum Service {
114
- CORE = "core",
115
- APPLIANCE = "appliance",
116
- NOTIFICATION = "notification",
117
- A2A = "a2a",
118
- EVENT = "event",
119
- RSTS = "RSTS",
120
- }
121
- /**
122
- * HTTP methods supported by the Safeguard API.
123
- */
124
- declare enum HttpMethod {
125
- GET = "GET",
126
- POST = "POST",
127
- PUT = "PUT",
128
- DELETE = "DELETE",
129
- PATCH = "PATCH",
130
- }
131
- /**
132
- * Full response from a Safeguard API call (returned when fullResponse: true).
133
- */
134
- interface SafeguardResponse<T = unknown> {
135
- data: T;
136
- status: number;
137
- headers: Record<string, string>;
138
- }
139
- /**
140
- * Options for individual API requests.
141
- */
142
- interface RequestOptions {
143
- /** Request body as JSON-serializable object. */
144
- json?: unknown;
145
- /** Raw request body. */
146
- body?: BodyInit | null;
147
- /** Additional HTTP headers. */
148
- headers?: Record<string, string>;
149
- /** URL query parameters. */
150
- query?: Record<string, string | number | boolean>;
151
- /** AbortSignal for request cancellation. */
152
- signal?: AbortSignal;
153
- /** Request timeout in milliseconds (overrides client default). */
154
- timeout?: number;
155
- /** If true, returns full response with status and headers. */
156
- fullResponse?: boolean;
157
- }
158
- /**
159
- * Options for constructing a SafeguardClient.
160
- */
161
- interface SafeguardClientOptions {
162
- /** Authentication strategy. */
163
- auth: Auth;
164
- /** Custom CA certificate (PEM string or Buffer). Node.js only. */
165
- ca?: string | Buffer;
166
- /** Whether to verify TLS certificates. Default: true. */
167
- verify?: boolean;
168
- /** Safeguard API version prefix. Default: 'v4'. */
169
- apiVersion?: string;
170
- /** Request timeout in milliseconds. Default: 300_000 (5 min). */
171
- timeout?: number;
172
- /** Auto-refresh tokens before expiry. Default: true. */
173
- autoRefresh?: boolean;
174
- }
175
- //# sourceMappingURL=types.d.ts.map
176
- //#endregion
177
- //#region src/errors.d.ts
178
- /**
179
- * Error hierarchy for the Safeguard SDK.
180
- *
181
- * SafeguardError
182
- * ├── ApiError (HTTP errors from Safeguard API)
183
- * │ ├── AuthenticationError (401)
184
- * │ ├── AuthorizationError (403)
185
- * │ └── NotFoundError (404)
186
- * ├── TransportError (Network/connection failures)
187
- * └── ConfigurationError (Invalid client options)
188
- */
189
- declare class SafeguardError extends Error {
190
- constructor(message: string, options?: ErrorOptions);
191
- }
192
- interface ApiErrorBody {
193
- Code?: string;
194
- Message?: string;
195
- InnerError?: {
196
- Message?: string;
197
- };
198
- [key: string]: unknown;
199
- }
200
- declare class ApiError extends SafeguardError {
201
- readonly status: number;
202
- readonly body: ApiErrorBody | null;
203
- constructor(message: string, status: number, body?: ApiErrorBody | null, options?: ErrorOptions);
204
- /**
205
- * Creates an appropriate ApiError subclass based on HTTP status code.
206
- */
207
- static fromResponse(status: number, body: string | ApiErrorBody | null): ApiError;
208
- private static parseBody;
209
- private static buildMessage;
210
- }
211
- declare class AuthenticationError extends ApiError {
212
- constructor(message: string, body?: ApiErrorBody | null, options?: ErrorOptions);
213
- }
214
- declare class AuthorizationError extends ApiError {
215
- constructor(message: string, body?: ApiErrorBody | null, options?: ErrorOptions);
216
- }
217
- declare class NotFoundError extends ApiError {
218
- constructor(message: string, body?: ApiErrorBody | null, options?: ErrorOptions);
219
- }
220
- declare class TransportError extends SafeguardError {
221
- constructor(message: string, options?: ErrorOptions);
222
- }
223
- declare class ConfigurationError extends SafeguardError {
224
- constructor(message: string, options?: ErrorOptions);
225
- }
226
- //# sourceMappingURL=errors.d.ts.map
227
- //#endregion
228
- //#region src/utils.d.ts
229
- /**
230
- * Validates that a host string is a bare hostname or IP address.
231
- * Rejects URLs, paths, query strings, userinfo, and embedded ports.
232
- *
233
- * @throws {ConfigurationError} if the host contains disallowed characters
234
- */
235
- declare function validateHost(host: string): string;
236
- /**
237
- * Builds the base URL for a Safeguard service endpoint.
238
- *
239
- * @example
240
- * buildServiceUrl('appliance.example.com', Service.CORE)
241
- * // => 'https://appliance.example.com/service/core/v4'
242
- */
243
- declare function buildServiceUrl(host: string, service: Service, apiVersion?: string): string;
244
- /**
245
- * Builds a full API URL including path and optional query parameters.
246
- *
247
- * @example
248
- * buildRequestUrl('appliance.example.com', Service.CORE, 'Users', { filter: 'Name eq "admin"' })
249
- * // => 'https://appliance.example.com/service/core/v4/Users?filter=Name+eq+%22admin%22'
250
- */
251
- declare function buildRequestUrl(host: string, service: Service, relativeUrl: string, query?: Record<string, string | number | boolean>, apiVersion?: string): string;
252
- /**
253
- * Encodes bytes to a URL-safe base64 string (no padding).
254
- */
255
- declare function base64UrlEncode(bytes: Uint8Array): string;
256
- /**
257
- * Generates a cryptographically random code verifier for PKCE.
258
- * Returns a 43-character base64url string (32 random bytes).
259
- */
260
- declare function generateCodeVerifier(): string;
261
- /**
262
- * Computes the S256 code challenge from a code verifier.
263
- * Uses Web Crypto API (available in Node 20+ and all modern browsers).
264
- */
265
- declare function generateCodeChallenge(verifier: string): Promise<string>;
266
- /**
267
- * Generates a random state parameter for OAuth flows.
268
- */
269
- declare function generateState(): string;
270
- /**
271
- * Extracts the `exp` claim from a JWT and returns expiresIn (seconds from now).
272
- * Returns undefined if the token is not a valid JWT or has no `exp` claim.
273
- */
274
- //#endregion
275
- //#region src/storage/memory.d.ts
276
- /**
277
- * In-memory storage provider. Default for Node.js environments.
278
- * Data does not persist across process restarts.
279
- */
280
- declare class MemoryStorage implements StorageProvider {
281
- #private;
282
- get(key: string): string | null;
283
- set(key: string, value: string): void;
284
- remove(key: string): void;
285
- clear(): void;
286
- }
287
- //# sourceMappingURL=memory.d.ts.map
288
- //#endregion
289
- //#region src/storage/session.d.ts
290
- /**
291
- * Browser sessionStorage adapter. Data persists for the browser tab lifetime.
292
- * Requires a DOM environment (browser or jsdom).
293
- */
294
- declare class BrowserSessionStorage implements StorageProvider {
295
- get(key: string): string | null;
296
- set(key: string, value: string): void;
297
- remove(key: string): void;
298
- clear(): void;
299
- }
300
- //# sourceMappingURL=session.d.ts.map
301
- //#endregion
302
- //#region src/http/node.d.ts
303
- /**
304
- * Node.js HTTP client using undici for full TLS control.
305
- * Creates a per-instance Agent — no global state mutation.
306
- */
307
- declare class NodeHttpClient implements HttpClient {
308
- #private;
309
- constructor(tlsOptions?: TlsOptions);
310
- request(options: HttpRequestOptions): Promise<HttpResponse>;
311
- dispose(): void;
312
- }
313
- //# sourceMappingURL=node.d.ts.map
314
- //#endregion
315
- //#region src/http/browser.d.ts
316
- /**
317
- * Browser HTTP client using native fetch API.
318
- * No TLS configuration needed — browser handles certificates.
319
- */
320
- declare class BrowserHttpClient implements HttpClient {
321
- #private;
322
- constructor(options?: {
323
- credentials?: RequestCredentials;
324
- });
325
- request(options: HttpRequestOptions): Promise<HttpResponse>;
326
- }
327
- //# sourceMappingURL=browser.d.ts.map
328
- //#endregion
329
- //#region src/auth/password.d.ts
330
- interface PasswordAuthOptions {
331
- username: string;
332
- password: string;
333
- /** Identity provider name. Default: 'local'. */
334
- provider?: string;
335
- }
336
- /**
337
- * Authenticates using username/password via RSTS Resource Owner grant.
338
- */
339
- declare class PasswordAuth implements Auth {
340
- #private;
341
- constructor(options: PasswordAuthOptions);
342
- get description(): string;
343
- authenticate(host: string, httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
344
- refreshToken(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet | null>;
345
- }
346
- //# sourceMappingURL=password.d.ts.map
347
- //#endregion
348
- //#region src/auth/certificate.d.ts
349
- interface CertificateAuthOptions {
350
- /** Path to PEM certificate file, or PEM string. */
351
- certFile?: string;
352
- /** Path to PEM private key file, or PEM string. */
353
- keyFile?: string;
354
- /** PEM certificate content (alternative to certFile). */
355
- cert?: string | Buffer;
356
- /** PEM key content (alternative to keyFile). */
357
- key?: string | Buffer;
358
- /** Path to PFX/PKCS12 file (alternative to cert+key). */
359
- pfxFile?: string;
360
- /** PFX/PKCS12 content (alternative to cert+key). */
361
- pfx?: string | Buffer;
362
- /** Passphrase for encrypted private key or PFX. */
363
- passphrase?: string;
364
- /** Identity provider name. Default: 'certificate'. */
365
- provider?: string;
366
- }
367
- /**
368
- * Authenticates using a client certificate (mTLS) against RSTS.
369
- * Node.js only — requires TLS client cert support in HttpClient.
370
- */
371
- declare class CertificateAuth implements Auth {
372
- #private;
373
- constructor(options: CertificateAuthOptions);
374
- get description(): string;
375
- /** Returns the TLS options needed to create an mTLS HttpClient. */
376
- getTlsOptions(): {
377
- cert?: string | Buffer;
378
- key?: string | Buffer;
379
- pfx?: string | Buffer;
380
- passphrase?: string;
381
- };
382
- authenticate(host: string, httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
383
- refreshToken(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet | null>;
384
- }
385
- //# sourceMappingURL=certificate.d.ts.map
386
- //#endregion
387
- //#region src/auth/pkce.d.ts
388
- interface PkceAuthOptions {
389
- /** OAuth redirect URI (must match RSTS configuration). */
390
- redirectUri: string;
391
- /** Identity provider name. Default: 'local'. */
392
- provider?: string;
393
- }
394
- /**
395
- * Authenticates using PKCE (Proof Key for Code Exchange) with browser redirect.
396
- * For browser environments where the user is redirected to RSTS login.
397
- */
398
- declare class PkceAuth implements Auth {
399
- #private;
400
- constructor(options: PkceAuthOptions);
401
- get description(): string;
402
- /**
403
- * Initiates the PKCE flow. If a stored authorization code exists (from callback),
404
- * exchanges it for a token. Otherwise, redirects to RSTS login.
405
- */
406
- authenticate(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet>;
407
- }
408
- //# sourceMappingURL=pkce.d.ts.map
409
- //#endregion
410
- //#region src/auth/pkce-noninteractive.d.ts
411
- interface PkceNonInteractiveAuthOptions {
412
- /** Identity provider name. Default: 'local'. */
413
- provider?: string;
414
- /** Port for the local callback server. Default: 8400. */
415
- callbackPort?: number;
416
- }
417
- /**
418
- * Non-interactive PKCE authentication for Node.js automation.
419
- * Starts a local HTTP server to receive the callback, opens the system browser
420
- * for login, and waits for the redirect.
421
- *
422
- * Matches PySafeguard's PkceAuth behavior (local server pattern).
423
- */
424
- declare class PkceNonInteractiveAuth implements Auth {
425
- #private;
426
- constructor(options?: PkceNonInteractiveAuthOptions);
427
- get description(): string;
428
- authenticate(host: string, httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
429
- }
430
- //# sourceMappingURL=pkce-noninteractive.d.ts.map
431
- //#endregion
432
- //#region src/auth/pkce-callback.d.ts
433
- interface PkceCallbackResult {
434
- code: string;
435
- state: string;
436
- }
437
- /**
438
- * Parses the PKCE callback URL and stores the authorization code.
439
- * Call this on the callback/redirect page to complete the PKCE flow.
440
- *
441
- * This is the explicit replacement for the legacy `safeguardJsAccessTokenChecker.js`
442
- * script that ran as a side-effect on import.
443
- *
444
- * @param storage - StorageProvider to persist the code
445
- * @param url - The callback URL to parse (defaults to window.location.href)
446
- * @returns The parsed code and state, or null if not a valid callback
447
- */
448
- declare function handlePkceCallback(storage: StorageProvider, url?: string): PkceCallbackResult | null;
449
- //# sourceMappingURL=pkce-callback.d.ts.map
450
- //#endregion
451
- //#region src/auth/token.d.ts
452
- interface TokenAuthOptions {
453
- /** Pre-existing Safeguard access token. */
454
- accessToken: string;
455
- }
456
- /**
457
- * Uses a pre-existing access token. No authentication flow — the token is assumed valid.
458
- * Useful when tokens are obtained externally or for service-to-service scenarios.
459
- */
460
- declare class TokenAuth implements Auth {
461
- #private;
462
- constructor(options: TokenAuthOptions);
463
- get description(): string;
464
- authenticate(_host: string, _httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
465
- }
466
- //# sourceMappingURL=token.d.ts.map
467
- //#endregion
468
- //#region src/auth/anonymous.d.ts
469
- /**
470
- * Anonymous authentication — no credentials.
471
- * Used for accessing public Safeguard endpoints (e.g., appliance status).
472
- */
473
- declare class AnonymousAuth implements Auth {
474
- get description(): string;
475
- authenticate(_host: string, _httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
476
- }
477
- //# sourceMappingURL=anonymous.d.ts.map
478
- //#endregion
479
- //#region src/client.d.ts
480
- /**
481
- * Main entry point for the Safeguard SDK.
482
- * Instance-based — no global state. Multiple clients to different appliances are supported.
483
- */
484
- declare class SafeguardClient {
485
- #private;
486
- constructor(host: string, options: SafeguardClientOptions);
487
- /** The appliance hostname this client connects to. */
488
- get host(): string;
489
- /** The API version prefix (e.g. 'v4'). */
490
- get apiVersion(): string;
491
- /** Custom CA certificate, if provided. */
492
- get ca(): string | Buffer | undefined;
493
- /** Whether TLS verification is enabled. */
494
- get verify(): boolean;
495
- /** Whether the client has an active authenticated session. */
496
- get isConnected(): boolean;
497
- /**
498
- * Sets a custom StorageProvider (e.g., BrowserSessionStorage).
499
- * Must be called before connect().
500
- */
501
- setStorage(storage: StorageProvider): this;
502
- /**
503
- * Sets the HttpClient implementation. If not called, must be set before connect().
504
- * The factory pattern allows platform-specific client injection:
505
- * - Node: `new NodeHttpClient({ ca, rejectUnauthorized })`
506
- * - Browser: `new BrowserHttpClient()`
507
- */
508
- setHttpClient(httpClient: HttpClient): this;
509
- /**
510
- * Authenticate and establish a session.
511
- * @throws {AuthenticationError} if authentication fails
512
- * @throws {ConfigurationError} if httpClient not set
513
- */
514
- connect(): Promise<void>;
515
- /**
516
- * Disconnect — dispose HTTP client and clear token.
517
- */
518
- disconnect(): Promise<void>;
519
- /**
520
- * Returns seconds until the current access token expires, or -1 if unknown.
521
- */
522
- getAccessTokenLifetimeRemaining(): number;
523
- get<T = unknown>(service: Service, relativeUrl: string, options?: RequestOptions): Promise<T>;
524
- post<T = unknown>(service: Service, relativeUrl: string, options?: RequestOptions): Promise<T>;
525
- put<T = unknown>(service: Service, relativeUrl: string, options?: RequestOptions): Promise<T>;
526
- delete<T = unknown>(service: Service, relativeUrl: string, options?: RequestOptions): Promise<T>;
527
- patch<T = unknown>(service: Service, relativeUrl: string, options?: RequestOptions): Promise<T>;
528
- /**
529
- * Low-level request method. Convenience verbs delegate here.
530
- *
531
- * When `options.fullResponse` is true, returns SafeguardResponse<T> with status + headers.
532
- * Otherwise returns just the parsed response body as T.
533
- */
534
- invoke<T = unknown>(service: Service, method: HttpMethod, relativeUrl: string, options?: RequestOptions): Promise<T>;
535
- }
536
- //# sourceMappingURL=client.d.ts.map
537
- //#endregion
538
- //#region src/a2a/types.d.ts
539
- /**
540
- * SSH key formats for private key retrieval.
541
- */
542
- declare enum SshKeyFormat {
543
- OpenSsh = "OpenSsh",
544
- Ssh2 = "Ssh2",
545
- Putty = "Putty",
546
- }
547
- /**
548
- * An A2A retrievable account as returned by the discovery endpoint.
549
- */
550
- interface RetrievableAccount {
551
- AccountId: number;
552
- AssetId: number;
553
- AssetName: string;
554
- AccountName: string;
555
- DomainName: string;
556
- AccountType: string;
557
- ApiKey: string;
558
- }
559
- /**
560
- * Brokered access request types.
561
- */
562
- declare enum BrokeredAccessRequestType {
563
- Password = "Password",
564
- SshKey = "SshKey",
565
- ApiKey = "ApiKey",
566
- Token = "Token",
567
- RdpFile = "RdpFile",
568
- RemoteDesktop = "RemoteDesktop",
569
- SshSession = "SshSession",
570
- }
571
- /**
572
- * Options for creating a brokered access request.
573
- */
574
- interface BrokeredAccessRequest {
575
- AccessType: BrokeredAccessRequestType;
576
- ForUserId?: number;
577
- ForUserName?: string;
578
- AssetId?: number;
579
- AccountId?: number;
580
- AccountAssetId?: number;
581
- AccountName?: string;
582
- AssetName?: string;
583
- DomainName?: string;
584
- }
585
- /**
586
- * Response from a brokered access request.
587
- */
588
- interface BrokeredAccessResponse {
589
- RequestId: string;
590
- AccessToken?: string;
591
- [key: string]: unknown;
592
- }
593
- //# sourceMappingURL=types.d.ts.map
594
- //#endregion
595
- //#region src/a2a/index.d.ts
596
- interface A2AClientOptions {
597
- /** Certificate-based auth (A2A always uses client certificates). */
598
- auth: CertificateAuth;
599
- /** Custom CA certificate (PEM). */
600
- ca?: string | Buffer;
601
- /** Whether to verify TLS. Default: true. */
602
- verify?: boolean;
603
- /** API version string (default: 'v4'). */
604
- apiVersion?: string;
605
- }
606
- /**
607
- * Application-to-Application client for programmatic credential retrieval.
608
- * Uses client certificate authentication exclusively.
609
- *
610
- * Full parity with PySafeguard and SafeguardDotNet A2A clients.
611
- */
612
- declare class A2AClient {
613
- #private;
614
- constructor(host: string, options: A2AClientOptions);
615
- /** The appliance hostname. */
616
- get host(): string;
617
- /** Custom CA, if set. */
618
- get ca(): string | Buffer | undefined;
619
- /** Whether TLS verification is enabled. */
620
- get verify(): boolean;
621
- /** The CertificateAuth providing TLS client cert configuration. */
622
- get auth(): CertificateAuth;
623
- /**
624
- * Sets the HttpClient (must be configured with client cert TLS).
625
- */
626
- setHttpClient(httpClient: HttpClient): this;
627
- /**
628
- * Retrieve a password credential via A2A.
629
- * @param apiKey - The API key for the retrievable account
630
- */
631
- retrievePassword(apiKey: string): Promise<SecretValue>;
632
- /**
633
- * Retrieve an SSH private key credential via A2A.
634
- * @param apiKey - The API key for the retrievable account
635
- * @param format - SSH key format (default: OpenSsh)
636
- */
637
- retrievePrivateKey(apiKey: string, format?: SshKeyFormat): Promise<SecretValue>;
638
- /**
639
- * Retrieve an API key secret credential via A2A.
640
- * @param apiKey - The API key for the retrievable account
641
- */
642
- retrieveApiKeySecret(apiKey: string): Promise<SecretValue>;
643
- /**
644
- * Get the list of retrievable accounts available to this certificate.
645
- */
646
- getRetrievableAccounts(): Promise<RetrievableAccount[]>;
647
- /**
648
- * Set a password on a managed account via A2A.
649
- * @param apiKey - The API key for the account
650
- * @param password - The new password value
651
- */
652
- setPassword(apiKey: string, password: string): Promise<void>;
653
- /**
654
- * Set a private key on a managed account via A2A.
655
- * @param apiKey - The API key for the account
656
- * @param key - The private key content
657
- * @param passphrase - Optional passphrase for the key
658
- * @param format - SSH key format (default: OpenSsh)
659
- */
660
- setPrivateKey(apiKey: string, key: string, passphrase?: string, format?: SshKeyFormat): Promise<void>;
661
- /**
662
- * Submit a brokered access request via A2A.
663
- * @param apiKey - The API key for the access request
664
- * @param request - The access request details
665
- */
666
- brokerAccessRequest(apiKey: string, request: BrokeredAccessRequest): Promise<BrokeredAccessResponse>;
667
- }
668
- //#endregion
669
- export { A2AClient, type A2AClientOptions, AnonymousAuth, ApiError, type ApiErrorBody, type Auth, AuthenticationError, AuthorizationError, type BrokeredAccessRequest, BrokeredAccessRequestType, type BrokeredAccessResponse, BrowserHttpClient, BrowserSessionStorage, CertificateAuth, type CertificateAuthOptions, ConfigurationError, type HttpClient, HttpMethod, type HttpRequestOptions, type HttpResponse, MemoryStorage, NodeHttpClient, NotFoundError, PasswordAuth, type PasswordAuthOptions, PkceAuth, type PkceAuthOptions, type PkceCallbackResult, PkceNonInteractiveAuth, type PkceNonInteractiveAuthOptions, type RequestOptions, type RetrievableAccount, SafeguardClient, type SafeguardClientOptions, SafeguardError, type SafeguardResponse, SecretValue, Service, SshKeyFormat, StorageKeys, type StorageProvider, type TlsOptions, TokenAuth, type TokenAuthOptions, type TokenSet, TransportError, base64UrlEncode, buildRequestUrl, buildServiceUrl, generateCodeChallenge, generateCodeVerifier, generateState, handlePkceCallback, validateHost };
670
- //# sourceMappingURL=index-53AwvPfY.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-53AwvPfY.d.ts","names":[],"sources":["../src/http/types.ts","../src/storage/types.ts","../src/secret.ts","../src/auth/types.ts","../src/types.ts","../src/errors.ts","../src/utils.ts","../src/storage/memory.ts","../src/storage/session.ts","../src/http/node.ts","../src/http/browser.ts","../src/auth/password.ts","../src/auth/certificate.ts","../src/auth/pkce.ts","../src/auth/pkce-noninteractive.ts","../src/auth/pkce-callback.ts","../src/auth/token.ts","../src/auth/anonymous.ts","../src/client.ts","../src/a2a/types.ts","../src/a2a/index.ts"],"mappings":"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"}