@authup/server-kit 1.0.0-beta.34 → 1.0.0-beta.35
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/index.d.mts +379 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +674 -924
- package/dist/index.mjs.map +1 -1
- package/package.json +11 -11
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,379 @@
|
|
|
1
|
+
import { JWKType, JWTAlgorithm, JWTClaims, JWTHeader, OAuth2TokenPayload } from "@authup/specs";
|
|
2
|
+
import { TTLCache, TTLCacheOptions } from "@isaacs/ttlcache";
|
|
3
|
+
import { Client, Client as RedisClient, ClientOptions as RedisClientOptions, JsonAdapter, JsonAdapter as RedisJsonAdapter, Watcher as RedisWatcher, buildKeyPath as buildRedisKeyPath, escapeKey as escapeRedisKey, parseKeyPath as parseRedisKeyPath } from "redis-extension";
|
|
4
|
+
import { Logger, Logger as Logger$1 } from "winston";
|
|
5
|
+
import { Factory } from "singa";
|
|
6
|
+
import { VaultClient, VaultClient as VaultClient$1, createClient as createVaultClient } from "@hapic/vault";
|
|
7
|
+
import { EventPayload } from "@authup/core-realtime-kit";
|
|
8
|
+
import { Emitter } from "@socket.io/redis-emitter";
|
|
9
|
+
|
|
10
|
+
//#region src/crypto/hash/compare.d.ts
|
|
11
|
+
declare function compare(value: string, hashedValue: string): Promise<boolean>;
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region src/crypto/hash/hash.d.ts
|
|
14
|
+
declare function hash(str: string, rounds?: number): Promise<string>;
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/crypto/key/asymmetric/constants.d.ts
|
|
17
|
+
declare enum CryptoAsymmetricAlgorithm {
|
|
18
|
+
RSA_PSS = "RSA-PSS",
|
|
19
|
+
RSASSA_PKCS1_V1_5 = "RSASSA-PKCS1-v1_5",
|
|
20
|
+
RSA_OAEP = "RSA-OAEP",
|
|
21
|
+
ECDSA = "ECDSA",
|
|
22
|
+
ECDH = "ECDH"
|
|
23
|
+
}
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region src/crypto/key/base.d.ts
|
|
26
|
+
declare abstract class BaseKey {
|
|
27
|
+
protected key: CryptoKey;
|
|
28
|
+
constructor(cryptoKey: CryptoKey);
|
|
29
|
+
toArrayBuffer(): Promise<ArrayBuffer>;
|
|
30
|
+
toUint8Array(): Promise<Uint8Array>;
|
|
31
|
+
toBase64(): Promise<string>;
|
|
32
|
+
toJWK(): Promise<JsonWebKey>;
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/crypto/key/asymmetric/types.d.ts
|
|
36
|
+
type RSAKeyPairCreateOptions = RsaHashedKeyGenParams & {
|
|
37
|
+
name: CryptoAsymmetricAlgorithm.RSA_OAEP | CryptoAsymmetricAlgorithm.RSA_PSS | CryptoAsymmetricAlgorithm.RSASSA_PKCS1_V1_5;
|
|
38
|
+
};
|
|
39
|
+
type RSAKeyPairCreateOptionsInput = Partial<RsaHashedKeyGenParams> & {
|
|
40
|
+
name: CryptoAsymmetricAlgorithm.RSA_OAEP | CryptoAsymmetricAlgorithm.RSA_PSS | CryptoAsymmetricAlgorithm.RSASSA_PKCS1_V1_5;
|
|
41
|
+
};
|
|
42
|
+
type ECKeyPairCreateOptions = EcKeyGenParams & {
|
|
43
|
+
name: CryptoAsymmetricAlgorithm.ECDSA | CryptoAsymmetricAlgorithm.ECDH;
|
|
44
|
+
};
|
|
45
|
+
type ECKeyPairCreateOptionsInput = Partial<EcKeyGenParams> & {
|
|
46
|
+
name: CryptoAsymmetricAlgorithm.ECDSA | CryptoAsymmetricAlgorithm.ECDH;
|
|
47
|
+
};
|
|
48
|
+
type AsymmetricKeyPairCreateOptions = RSAKeyPairCreateOptions | ECKeyPairCreateOptions;
|
|
49
|
+
type AsymmetricKeyPairCreateOptionsInput = RSAKeyPairCreateOptionsInput | ECKeyPairCreateOptionsInput;
|
|
50
|
+
type RSAKeyPairImportOptions = RsaHashedImportParams & {
|
|
51
|
+
name: CryptoAsymmetricAlgorithm.RSA_OAEP | CryptoAsymmetricAlgorithm.RSA_PSS | CryptoAsymmetricAlgorithm.RSASSA_PKCS1_V1_5;
|
|
52
|
+
};
|
|
53
|
+
type RSAKeyPairImportOptionsInput = Partial<RsaHashedImportParams> & {
|
|
54
|
+
name: CryptoAsymmetricAlgorithm.RSA_OAEP | CryptoAsymmetricAlgorithm.RSA_PSS | CryptoAsymmetricAlgorithm.RSASSA_PKCS1_V1_5;
|
|
55
|
+
};
|
|
56
|
+
type ECKeyPairImportOptions = EcKeyImportParams & {
|
|
57
|
+
name: CryptoAsymmetricAlgorithm.ECDSA | CryptoAsymmetricAlgorithm.ECDH;
|
|
58
|
+
};
|
|
59
|
+
type ECKeyPairImportOptionsInput = Partial<EcKeyImportParams> & {
|
|
60
|
+
name: CryptoAsymmetricAlgorithm.ECDSA | CryptoAsymmetricAlgorithm.ECDH;
|
|
61
|
+
};
|
|
62
|
+
type AsymmetricKeyPairImportOptions = RSAKeyPairImportOptions | ECKeyPairImportOptions;
|
|
63
|
+
type AsymmetricKeyImportOptionsInput = RSAKeyPairImportOptionsInput | ECKeyPairImportOptionsInput;
|
|
64
|
+
type AsymmetricKeyImportContext<T> = {
|
|
65
|
+
format: 'spki' | 'pkcs8';
|
|
66
|
+
key: T;
|
|
67
|
+
options: AsymmetricKeyImportOptionsInput;
|
|
68
|
+
};
|
|
69
|
+
//#endregion
|
|
70
|
+
//#region src/crypto/key/asymmetric/module.d.ts
|
|
71
|
+
declare class AsymmetricKey extends BaseKey {
|
|
72
|
+
toPem(): Promise<string>;
|
|
73
|
+
static fromPem(ctx: AsymmetricKeyImportContext<string>): Promise<AsymmetricKey>;
|
|
74
|
+
static fromBase64(ctx: AsymmetricKeyImportContext<string>): Promise<AsymmetricKey>;
|
|
75
|
+
static fromArrayBuffer(ctx: AsymmetricKeyImportContext<ArrayBuffer>): Promise<AsymmetricKey>;
|
|
76
|
+
static buildImportOptionsForJWTAlgorithm(alg: `${JWTAlgorithm}`): {
|
|
77
|
+
name: CryptoAsymmetricAlgorithm;
|
|
78
|
+
hash: string;
|
|
79
|
+
namedCurve?: undefined;
|
|
80
|
+
} | {
|
|
81
|
+
name: CryptoAsymmetricAlgorithm;
|
|
82
|
+
namedCurve: string;
|
|
83
|
+
hash?: undefined;
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
//#endregion
|
|
87
|
+
//#region src/crypto/key/asymmetric/check.d.ts
|
|
88
|
+
declare function isAsymmetricAlgorithm(input: string): input is CryptoAsymmetricAlgorithm;
|
|
89
|
+
//#endregion
|
|
90
|
+
//#region src/crypto/key/asymmetric/create.d.ts
|
|
91
|
+
declare function createAsymmetricKeyPair(options: AsymmetricKeyPairCreateOptionsInput): Promise<CryptoKeyPair>;
|
|
92
|
+
//#endregion
|
|
93
|
+
//#region src/crypto/key/asymmetric/helpers/wrap.d.ts
|
|
94
|
+
declare function encodePKCS8ToPEM(base64: string): string;
|
|
95
|
+
declare function encodeSPKIToPem(input: string): string;
|
|
96
|
+
declare function decodePemToPKCS8(input: string): string;
|
|
97
|
+
declare function decodePemToSpki(input: string): string;
|
|
98
|
+
//#endregion
|
|
99
|
+
//#region src/crypto/key/asymmetric/key-usages.d.ts
|
|
100
|
+
/**
|
|
101
|
+
* @see https://nodejs.org/api/webcrypto.html#cryptokeyusages
|
|
102
|
+
*/
|
|
103
|
+
declare function getKeyUsagesForAsymmetricAlgorithm(name: string, format?: Exclude<KeyFormat, 'jwk'>): KeyUsage[];
|
|
104
|
+
//#endregion
|
|
105
|
+
//#region src/crypto/key/asymmetric/normalize.d.ts
|
|
106
|
+
declare function normalizeAsymmetricKeyPairCreateOptions(options: AsymmetricKeyPairCreateOptionsInput): AsymmetricKeyPairCreateOptions;
|
|
107
|
+
declare function normalizeAsymmetricKeyImportOptions(options: AsymmetricKeyImportOptionsInput): AsymmetricKeyPairImportOptions;
|
|
108
|
+
//#endregion
|
|
109
|
+
//#region src/crypto/key/symmetric/constants.d.ts
|
|
110
|
+
declare enum SymmetricAlgorithm {
|
|
111
|
+
HMAC = "HMAC",
|
|
112
|
+
AES_CTR = "AES-CTR",
|
|
113
|
+
AES_CBC = "AES-CBC",
|
|
114
|
+
AES_GCM = "AES-GCM"
|
|
115
|
+
}
|
|
116
|
+
//#endregion
|
|
117
|
+
//#region src/crypto/key/symmetric/check.d.ts
|
|
118
|
+
declare function isSymmetricAlgorithm(input: string): input is SymmetricAlgorithm;
|
|
119
|
+
//#endregion
|
|
120
|
+
//#region src/crypto/key/symmetric/types.d.ts
|
|
121
|
+
type AESKeyCreateOptions = AesKeyGenParams & {
|
|
122
|
+
name: `${SymmetricAlgorithm.AES_CBC}` | `${SymmetricAlgorithm.AES_CTR}` | `${SymmetricAlgorithm.AES_GCM}`;
|
|
123
|
+
};
|
|
124
|
+
type AESKeyCreateOptionsInput = Partial<AesKeyGenParams> & {
|
|
125
|
+
name: `${SymmetricAlgorithm.AES_CBC}` | `${SymmetricAlgorithm.AES_CTR}` | `${SymmetricAlgorithm.AES_GCM}`;
|
|
126
|
+
};
|
|
127
|
+
type HMACKeyCreateOptions = HmacKeyGenParams & {
|
|
128
|
+
name: `${SymmetricAlgorithm.HMAC}`;
|
|
129
|
+
};
|
|
130
|
+
type HMACKeyCreateOptionsInput = Partial<HmacKeyGenParams> & {
|
|
131
|
+
name: `${SymmetricAlgorithm.HMAC}`;
|
|
132
|
+
};
|
|
133
|
+
type SymmetricKeyCreateOptions = AESKeyCreateOptions | HMACKeyCreateOptions;
|
|
134
|
+
type SymmetricKeyCreateOptionsInput = AESKeyCreateOptionsInput | HMACKeyCreateOptionsInput;
|
|
135
|
+
type AESKeyImportOptions = AesKeyAlgorithm & {
|
|
136
|
+
name: `${SymmetricAlgorithm.AES_CBC}` | `${SymmetricAlgorithm.AES_CTR}` | `${SymmetricAlgorithm.AES_GCM}`;
|
|
137
|
+
};
|
|
138
|
+
type HMACKeyImportOptions = HmacImportParams & {
|
|
139
|
+
name: `${SymmetricAlgorithm.HMAC}`;
|
|
140
|
+
};
|
|
141
|
+
type HMACKeyImportOptionsInput = Partial<HmacImportParams> & {
|
|
142
|
+
name: `${SymmetricAlgorithm.HMAC}`;
|
|
143
|
+
};
|
|
144
|
+
type SymmetricKeyImportOptions = AESKeyImportOptions | HMACKeyImportOptions;
|
|
145
|
+
type SymmetricKeyImportOptionsInput = AESKeyImportOptions | HMACKeyImportOptionsInput;
|
|
146
|
+
type SymmetricKeyImportContext<T> = {
|
|
147
|
+
format: 'raw';
|
|
148
|
+
key: T;
|
|
149
|
+
options: SymmetricKeyImportOptionsInput;
|
|
150
|
+
};
|
|
151
|
+
//#endregion
|
|
152
|
+
//#region src/crypto/key/symmetric/module.d.ts
|
|
153
|
+
declare class SymmetricKey extends BaseKey {
|
|
154
|
+
static fromBase64(ctx: SymmetricKeyImportContext<string>): Promise<SymmetricKey>;
|
|
155
|
+
static fromArrayBuffer(ctx: SymmetricKeyImportContext<ArrayBuffer>): Promise<SymmetricKey>;
|
|
156
|
+
static buildImportOptionsForJWTAlgorithm(alg: `${JWTAlgorithm}`): {
|
|
157
|
+
name: SymmetricAlgorithm;
|
|
158
|
+
hash: string;
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
//#endregion
|
|
162
|
+
//#region src/crypto/key/symmetric/create.d.ts
|
|
163
|
+
declare function createSymmetricKey(input: SymmetricKeyCreateOptionsInput): Promise<CryptoKey>;
|
|
164
|
+
//#endregion
|
|
165
|
+
//#region src/crypto/key/symmetric/key-usages.d.ts
|
|
166
|
+
declare function getKeyUsagesForSymmetricAlgorithm(name: string): KeyUsage[];
|
|
167
|
+
//#endregion
|
|
168
|
+
//#region src/crypto/json-web-token/extract.d.ts
|
|
169
|
+
/**
|
|
170
|
+
* Decode a JWT token with no verification.
|
|
171
|
+
*
|
|
172
|
+
* @param token
|
|
173
|
+
*
|
|
174
|
+
* @throws JWTError
|
|
175
|
+
*/
|
|
176
|
+
declare function extractTokenHeader(token: string): JWTHeader;
|
|
177
|
+
/**
|
|
178
|
+
* @param token
|
|
179
|
+
*
|
|
180
|
+
* @throws JWTError
|
|
181
|
+
*/
|
|
182
|
+
declare function extractTokenPayload(token: string): JWTClaims;
|
|
183
|
+
//#endregion
|
|
184
|
+
//#region src/crypto/json-web-token/type.d.ts
|
|
185
|
+
type TokenRSAAlgorithm = `${JWTAlgorithm.RS256}` | `${JWTAlgorithm.RS384}` | `${JWTAlgorithm.RS512}` | `${JWTAlgorithm.PS256}` | `${JWTAlgorithm.PS384}` | `${JWTAlgorithm.PS512}`;
|
|
186
|
+
type TokenECAlgorithm = `${JWTAlgorithm.ES256}` | `${JWTAlgorithm.ES384}`;
|
|
187
|
+
type TokenOCTAlgorithm = `${JWTAlgorithm.HS256}` | `${JWTAlgorithm.HS384}` | `${JWTAlgorithm.HS512}`;
|
|
188
|
+
//#endregion
|
|
189
|
+
//#region src/crypto/json-web-token/sign/types.d.ts
|
|
190
|
+
type TokenSignBaseOptions = {
|
|
191
|
+
keyId?: string;
|
|
192
|
+
};
|
|
193
|
+
type TokenSignRSAOptions = TokenSignBaseOptions & {
|
|
194
|
+
type: `${JWKType.RSA}` | JWKType.RSA;
|
|
195
|
+
algorithm?: TokenRSAAlgorithm;
|
|
196
|
+
/**
|
|
197
|
+
* base64 encoded private key.
|
|
198
|
+
*/
|
|
199
|
+
key: string | CryptoKey;
|
|
200
|
+
};
|
|
201
|
+
type TokenSignECOptions = TokenSignBaseOptions & {
|
|
202
|
+
type: `${JWKType.EC}` | JWKType.EC;
|
|
203
|
+
algorithm?: TokenECAlgorithm;
|
|
204
|
+
/**
|
|
205
|
+
* base64 encoded private key.
|
|
206
|
+
*/
|
|
207
|
+
key: string | CryptoKey;
|
|
208
|
+
};
|
|
209
|
+
type TokenSignOCTOptions = TokenSignBaseOptions & {
|
|
210
|
+
type: `${JWKType.OCT}` | JWKType.OCT;
|
|
211
|
+
algorithm?: TokenOCTAlgorithm;
|
|
212
|
+
key: string | CryptoKey;
|
|
213
|
+
};
|
|
214
|
+
type TokenSignOptions = TokenSignRSAOptions | TokenSignECOptions | TokenSignOCTOptions;
|
|
215
|
+
//#endregion
|
|
216
|
+
//#region src/crypto/json-web-token/sign/module.d.ts
|
|
217
|
+
declare function signToken(claims: JWTClaims, context: TokenSignOptions): Promise<string>;
|
|
218
|
+
//#endregion
|
|
219
|
+
//#region src/crypto/json-web-token/verify/types.d.ts
|
|
220
|
+
type TokenVerifyRSAOptions = {
|
|
221
|
+
type: `${JWKType.RSA}` | JWKType.RSA;
|
|
222
|
+
algorithms?: TokenRSAAlgorithm[];
|
|
223
|
+
/**
|
|
224
|
+
* base64 encoded public key.
|
|
225
|
+
*/
|
|
226
|
+
key: string | CryptoKey;
|
|
227
|
+
};
|
|
228
|
+
type TokenVerifyECOptions = {
|
|
229
|
+
type: `${JWKType.EC}` | JWKType.EC;
|
|
230
|
+
algorithms?: TokenECAlgorithm[];
|
|
231
|
+
/**
|
|
232
|
+
* base64 encoded public key.
|
|
233
|
+
*/
|
|
234
|
+
key: string | CryptoKey;
|
|
235
|
+
};
|
|
236
|
+
type TokenVerifyOCTOptions = {
|
|
237
|
+
type: `${JWKType.OCT}` | JWKType.OCT;
|
|
238
|
+
algorithms?: TokenOCTAlgorithm[];
|
|
239
|
+
key: string | CryptoKey;
|
|
240
|
+
};
|
|
241
|
+
type TokenVerifyOptions = TokenVerifyRSAOptions | TokenVerifyECOptions | TokenVerifyOCTOptions;
|
|
242
|
+
//#endregion
|
|
243
|
+
//#region src/crypto/json-web-token/verify/module.d.ts
|
|
244
|
+
/**
|
|
245
|
+
* Verify JWT.
|
|
246
|
+
*
|
|
247
|
+
* @param token
|
|
248
|
+
* @param context
|
|
249
|
+
*
|
|
250
|
+
* @throws OAuth2Error
|
|
251
|
+
*/
|
|
252
|
+
declare function verifyToken(token: string, context: TokenVerifyOptions): Promise<OAuth2TokenPayload>;
|
|
253
|
+
//#endregion
|
|
254
|
+
//#region src/domain-event/type.d.ts
|
|
255
|
+
type DomainEventChannelName = string | ((id?: string | number) => string);
|
|
256
|
+
type DomainEventDestination = {
|
|
257
|
+
namespace?: string;
|
|
258
|
+
channel: DomainEventChannelName;
|
|
259
|
+
};
|
|
260
|
+
type DomainEventDestinations = DomainEventDestination[];
|
|
261
|
+
type DomainEventPublishContext<T extends EventPayload = EventPayload> = {
|
|
262
|
+
content: T;
|
|
263
|
+
destinations: DomainEventDestinations;
|
|
264
|
+
};
|
|
265
|
+
interface IDomainEventPublisher {
|
|
266
|
+
publish(ctx: DomainEventPublishContext): Promise<void>;
|
|
267
|
+
}
|
|
268
|
+
//#endregion
|
|
269
|
+
//#region src/domain-event/module.d.ts
|
|
270
|
+
declare class DomainEventPublisher implements IDomainEventPublisher {
|
|
271
|
+
protected publishers: Set<IDomainEventPublisher>;
|
|
272
|
+
constructor();
|
|
273
|
+
mount(publisher: IDomainEventPublisher): void;
|
|
274
|
+
publish<T extends EventPayload>(ctx: DomainEventPublishContext<T>): Promise<void>;
|
|
275
|
+
}
|
|
276
|
+
//#endregion
|
|
277
|
+
//#region src/services/cache/types.d.ts
|
|
278
|
+
type CacheKeyBuildOptions = {
|
|
279
|
+
key: string;
|
|
280
|
+
prefix?: string;
|
|
281
|
+
suffix?: string;
|
|
282
|
+
};
|
|
283
|
+
type CacheSetOptions = {
|
|
284
|
+
/**
|
|
285
|
+
* Time to live in milliseconds (ms).
|
|
286
|
+
*/
|
|
287
|
+
ttl?: number;
|
|
288
|
+
};
|
|
289
|
+
type CacheClearOptions = {
|
|
290
|
+
prefix?: string;
|
|
291
|
+
suffix?: string;
|
|
292
|
+
};
|
|
293
|
+
interface ICache {
|
|
294
|
+
set(key: string, value: any, options?: CacheSetOptions): Promise<void>;
|
|
295
|
+
has(key: string): Promise<boolean>;
|
|
296
|
+
get<T = unknown>(key: string): Promise<T | null>;
|
|
297
|
+
pop<T = unknown>(key: string): Promise<T | null>;
|
|
298
|
+
drop(key: string): Promise<void>;
|
|
299
|
+
dropMany(keys: string[]): Promise<void>;
|
|
300
|
+
clear(options?: CacheClearOptions): Promise<void>;
|
|
301
|
+
}
|
|
302
|
+
//#endregion
|
|
303
|
+
//#region src/services/cache/adapters/memory.d.ts
|
|
304
|
+
declare class MemoryCache implements ICache {
|
|
305
|
+
protected instance: TTLCache<string, unknown>;
|
|
306
|
+
constructor(options?: TTLCacheOptions<string, unknown>);
|
|
307
|
+
pop<T = unknown>(key: string): Promise<T | null>;
|
|
308
|
+
has(key: string): Promise<boolean>;
|
|
309
|
+
get<T = unknown>(key: string): Promise<T | null>;
|
|
310
|
+
set(key: string, value: unknown, options: CacheSetOptions): Promise<void>;
|
|
311
|
+
drop(key: string): Promise<void>;
|
|
312
|
+
dropMany(keys: string[]): Promise<void>;
|
|
313
|
+
clear(options?: CacheClearOptions): Promise<void>;
|
|
314
|
+
}
|
|
315
|
+
//#endregion
|
|
316
|
+
//#region src/services/redis/factory.d.ts
|
|
317
|
+
type RedisClientCreateInput = string | boolean | RedisClient | RedisClientOptions;
|
|
318
|
+
declare function createRedisClient(input: RedisClientCreateInput): RedisClient;
|
|
319
|
+
//#endregion
|
|
320
|
+
//#region src/services/redis/check.d.ts
|
|
321
|
+
declare function isRedisClient(data: unknown): data is RedisClient;
|
|
322
|
+
//#endregion
|
|
323
|
+
//#region src/services/cache/adapters/redis.d.ts
|
|
324
|
+
declare class RedisCache implements ICache {
|
|
325
|
+
protected client: Client;
|
|
326
|
+
protected jsonAdapter: JsonAdapter;
|
|
327
|
+
constructor(input: string | boolean | RedisClient | RedisClientOptions);
|
|
328
|
+
get(key: string): Promise<any>;
|
|
329
|
+
pop<T = unknown>(key: string): Promise<T | null>;
|
|
330
|
+
has(key: string): Promise<boolean>;
|
|
331
|
+
set(key: string, value: any, options: CacheSetOptions): Promise<void>;
|
|
332
|
+
drop(key: string): Promise<void>;
|
|
333
|
+
dropMany(keys: string[]): Promise<void>;
|
|
334
|
+
clear(options?: CacheClearOptions): Promise<void>;
|
|
335
|
+
}
|
|
336
|
+
//#endregion
|
|
337
|
+
//#region src/services/cache/helper.d.ts
|
|
338
|
+
declare function buildCacheKey(options: CacheKeyBuildOptions): string;
|
|
339
|
+
//#endregion
|
|
340
|
+
//#region src/services/logger/types.d.ts
|
|
341
|
+
type LoggerCreateContext = {
|
|
342
|
+
env: string;
|
|
343
|
+
directory?: string;
|
|
344
|
+
};
|
|
345
|
+
//#endregion
|
|
346
|
+
//#region src/services/logger/module.d.ts
|
|
347
|
+
declare function createNoopLogger(): Logger;
|
|
348
|
+
declare function createLogger(context: LoggerCreateContext): Logger;
|
|
349
|
+
//#endregion
|
|
350
|
+
//#region src/services/logger/singleton.d.ts
|
|
351
|
+
declare function setLoggerFactory(factory: Factory<Logger$1>): void;
|
|
352
|
+
declare function isLoggerUsable(): boolean;
|
|
353
|
+
declare function setLogger(input: Logger$1): void;
|
|
354
|
+
declare function useLogger(): Logger$1;
|
|
355
|
+
//#endregion
|
|
356
|
+
//#region src/services/vault/singleton.d.ts
|
|
357
|
+
declare function setVaultFactory(factory: Factory<VaultClient$1>): void;
|
|
358
|
+
declare function isVaultClientUsable(): boolean;
|
|
359
|
+
declare function useVaultClient(): VaultClient$1;
|
|
360
|
+
//#endregion
|
|
361
|
+
//#region src/domain-event/redis/module.d.ts
|
|
362
|
+
declare class DomainEventRedisPublisher implements IDomainEventPublisher {
|
|
363
|
+
protected driver: Client;
|
|
364
|
+
constructor(input: RedisClientCreateInput);
|
|
365
|
+
publish(ctx: DomainEventPublishContext): Promise<void>;
|
|
366
|
+
}
|
|
367
|
+
//#endregion
|
|
368
|
+
//#region src/domain-event/socket/module.d.ts
|
|
369
|
+
declare class DomainEventSocketPublisher implements IDomainEventPublisher {
|
|
370
|
+
protected driver: Emitter;
|
|
371
|
+
constructor(input: RedisClientCreateInput);
|
|
372
|
+
publish(ctx: DomainEventPublishContext): Promise<void>;
|
|
373
|
+
}
|
|
374
|
+
//#endregion
|
|
375
|
+
//#region src/utils/has-property.d.ts
|
|
376
|
+
declare function hasOwnProperty<X extends Record<string, any>, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown>;
|
|
377
|
+
//#endregion
|
|
378
|
+
export { AESKeyCreateOptions, AESKeyCreateOptionsInput, AESKeyImportOptions, AsymmetricKey, AsymmetricKeyImportContext, AsymmetricKeyImportOptionsInput, AsymmetricKeyPairCreateOptions, AsymmetricKeyPairCreateOptionsInput, AsymmetricKeyPairImportOptions, BaseKey, CacheClearOptions, CacheKeyBuildOptions, CacheSetOptions, CryptoAsymmetricAlgorithm, DomainEventChannelName, DomainEventDestination, DomainEventDestinations, DomainEventPublishContext, DomainEventPublisher, DomainEventRedisPublisher, DomainEventSocketPublisher, ECKeyPairCreateOptions, ECKeyPairCreateOptionsInput, ECKeyPairImportOptions, ECKeyPairImportOptionsInput, HMACKeyCreateOptions, HMACKeyCreateOptionsInput, HMACKeyImportOptions, HMACKeyImportOptionsInput, ICache, IDomainEventPublisher, Logger, LoggerCreateContext, MemoryCache, RSAKeyPairCreateOptions, RSAKeyPairCreateOptionsInput, RSAKeyPairImportOptions, RSAKeyPairImportOptionsInput, RedisCache, RedisClient, RedisClientCreateInput, type RedisClientOptions, RedisJsonAdapter, RedisWatcher, SymmetricAlgorithm, SymmetricKey, SymmetricKeyCreateOptions, SymmetricKeyCreateOptionsInput, SymmetricKeyImportContext, SymmetricKeyImportOptions, SymmetricKeyImportOptionsInput, TokenECAlgorithm, TokenOCTAlgorithm, TokenRSAAlgorithm, TokenSignBaseOptions, TokenSignECOptions, TokenSignOCTOptions, TokenSignOptions, TokenSignRSAOptions, TokenVerifyECOptions, TokenVerifyOCTOptions, TokenVerifyOptions, TokenVerifyRSAOptions, VaultClient, buildCacheKey, buildRedisKeyPath, compare, createAsymmetricKeyPair, createLogger, createNoopLogger, createRedisClient, createSymmetricKey, createVaultClient, decodePemToPKCS8, decodePemToSpki, encodePKCS8ToPEM, encodeSPKIToPem, escapeRedisKey, extractTokenHeader, extractTokenPayload, getKeyUsagesForAsymmetricAlgorithm, getKeyUsagesForSymmetricAlgorithm, hasOwnProperty, hash, isAsymmetricAlgorithm, isLoggerUsable, isRedisClient, isSymmetricAlgorithm, isVaultClientUsable, normalizeAsymmetricKeyImportOptions, normalizeAsymmetricKeyPairCreateOptions, parseRedisKeyPath, setLogger, setLoggerFactory, setVaultFactory, signToken, useLogger, useVaultClient, verifyToken };
|
|
379
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/crypto/hash/compare.ts","../src/crypto/hash/hash.ts","../src/crypto/key/asymmetric/constants.ts","../src/crypto/key/base.ts","../src/crypto/key/asymmetric/types.ts","../src/crypto/key/asymmetric/module.ts","../src/crypto/key/asymmetric/check.ts","../src/crypto/key/asymmetric/create.ts","../src/crypto/key/asymmetric/helpers/wrap.ts","../src/crypto/key/asymmetric/key-usages.ts","../src/crypto/key/asymmetric/normalize.ts","../src/crypto/key/symmetric/constants.ts","../src/crypto/key/symmetric/check.ts","../src/crypto/key/symmetric/types.ts","../src/crypto/key/symmetric/module.ts","../src/crypto/key/symmetric/create.ts","../src/crypto/key/symmetric/key-usages.ts","../src/crypto/json-web-token/extract.ts","../src/crypto/json-web-token/type.ts","../src/crypto/json-web-token/sign/types.ts","../src/crypto/json-web-token/sign/module.ts","../src/crypto/json-web-token/verify/types.ts","../src/crypto/json-web-token/verify/module.ts","../src/domain-event/type.ts","../src/domain-event/module.ts","../src/services/cache/types.ts","../src/services/cache/adapters/memory.ts","../src/services/redis/factory.ts","../src/services/redis/check.ts","../src/services/cache/adapters/redis.ts","../src/services/cache/helper.ts","../src/services/logger/types.ts","../src/services/logger/module.ts","../src/services/logger/singleton.ts","../src/services/vault/singleton.ts","../src/domain-event/redis/module.ts","../src/domain-event/socket/module.ts","../src/utils/has-property.ts"],"mappings":"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"}
|