@sphereon/ssi-types 0.33.1-feature.vcdm2.tsup.32 → 0.33.1-next.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.
Files changed (112) hide show
  1. package/dist/events/index.d.ts +116 -0
  2. package/dist/events/index.d.ts.map +1 -0
  3. package/dist/events/index.js +165 -0
  4. package/dist/events/index.js.map +1 -0
  5. package/dist/index.d.ts +6 -1559
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +24 -1702
  8. package/dist/index.js.map +1 -1
  9. package/dist/logging/index.d.ts +73 -0
  10. package/dist/logging/index.d.ts.map +1 -0
  11. package/dist/logging/index.js +186 -0
  12. package/dist/logging/index.js.map +1 -0
  13. package/dist/mapper/credential-constraints.d.ts +16 -0
  14. package/dist/mapper/credential-constraints.d.ts.map +1 -0
  15. package/dist/mapper/credential-constraints.js +3 -0
  16. package/dist/mapper/credential-constraints.js.map +1 -0
  17. package/dist/mapper/credential-mapper.d.ts +124 -0
  18. package/dist/mapper/credential-mapper.d.ts.map +1 -0
  19. package/dist/mapper/credential-mapper.js +774 -0
  20. package/dist/mapper/credential-mapper.js.map +1 -0
  21. package/dist/mapper/index.d.ts +3 -0
  22. package/dist/mapper/index.d.ts.map +1 -0
  23. package/dist/mapper/index.js +19 -0
  24. package/dist/mapper/index.js.map +1 -0
  25. package/dist/mapper/jsonld-language-values.d.ts +18 -0
  26. package/dist/mapper/jsonld-language-values.d.ts.map +1 -0
  27. package/dist/mapper/jsonld-language-values.js +79 -0
  28. package/dist/mapper/jsonld-language-values.js.map +1 -0
  29. package/dist/types/cose.d.ts +77 -0
  30. package/dist/types/cose.d.ts.map +1 -0
  31. package/dist/types/cose.js +51 -0
  32. package/dist/types/cose.js.map +1 -0
  33. package/dist/types/dcql.d.ts +33 -0
  34. package/dist/types/dcql.d.ts.map +1 -0
  35. package/dist/types/dcql.js +4 -0
  36. package/dist/types/dcql.js.map +1 -0
  37. package/dist/types/did.d.ts +186 -0
  38. package/dist/types/did.d.ts.map +1 -0
  39. package/dist/types/did.js +78 -0
  40. package/dist/types/did.js.map +1 -0
  41. package/dist/types/generic.d.ts +44 -0
  42. package/dist/types/generic.d.ts.map +1 -0
  43. package/dist/types/generic.js +3 -0
  44. package/dist/types/generic.js.map +1 -0
  45. package/dist/types/index.d.ts +14 -0
  46. package/dist/types/index.d.ts.map +1 -0
  47. package/dist/types/index.js +30 -0
  48. package/dist/types/index.js.map +1 -0
  49. package/dist/types/jose.d.ts +89 -0
  50. package/dist/types/jose.d.ts.map +1 -0
  51. package/dist/types/jose.js +55 -0
  52. package/dist/types/jose.js.map +1 -0
  53. package/dist/types/metadata-types.d.ts +5 -0
  54. package/dist/types/metadata-types.d.ts.map +1 -0
  55. package/dist/types/metadata-types.js +3 -0
  56. package/dist/types/metadata-types.js.map +1 -0
  57. package/dist/types/mso_mdoc.d.ts +94 -0
  58. package/dist/types/mso_mdoc.d.ts.map +1 -0
  59. package/dist/types/mso_mdoc.js +121 -0
  60. package/dist/types/mso_mdoc.js.map +1 -0
  61. package/dist/types/pex.d.ts +36 -0
  62. package/dist/types/pex.d.ts.map +1 -0
  63. package/dist/types/pex.js +3 -0
  64. package/dist/types/pex.js.map +1 -0
  65. package/dist/types/sd-jwt-type-metadata.d.ts +191 -0
  66. package/dist/types/sd-jwt-type-metadata.d.ts.map +1 -0
  67. package/dist/types/sd-jwt-type-metadata.js +3 -0
  68. package/dist/types/sd-jwt-type-metadata.js.map +1 -0
  69. package/dist/types/sd-jwt-vc.d.ts +196 -0
  70. package/dist/types/sd-jwt-vc.d.ts.map +1 -0
  71. package/dist/types/sd-jwt-vc.js +142 -0
  72. package/dist/types/sd-jwt-vc.js.map +1 -0
  73. package/dist/types/status-list.d.ts +10 -0
  74. package/dist/types/status-list.d.ts.map +1 -0
  75. package/dist/types/status-list.js +9 -0
  76. package/dist/types/status-list.js.map +1 -0
  77. package/dist/types/vc.d.ts +28 -0
  78. package/dist/types/vc.d.ts.map +1 -0
  79. package/dist/types/vc.js +28 -0
  80. package/dist/types/vc.js.map +1 -0
  81. package/dist/types/w3c-vc.d.ts +243 -0
  82. package/dist/types/w3c-vc.d.ts.map +1 -0
  83. package/dist/types/w3c-vc.js +26 -0
  84. package/dist/types/w3c-vc.js.map +1 -0
  85. package/dist/utils/hasher.d.ts +4 -0
  86. package/dist/utils/hasher.d.ts.map +1 -0
  87. package/dist/utils/hasher.js +40 -0
  88. package/dist/utils/hasher.js.map +1 -0
  89. package/dist/utils/index.d.ts +3 -0
  90. package/dist/utils/index.d.ts.map +1 -0
  91. package/dist/utils/index.js +19 -0
  92. package/dist/utils/index.js.map +1 -0
  93. package/dist/utils/object.d.ts +8 -0
  94. package/dist/utils/object.d.ts.map +1 -0
  95. package/dist/utils/object.js +28 -0
  96. package/dist/utils/object.js.map +1 -0
  97. package/package.json +14 -23
  98. package/src/index.ts +2 -3
  99. package/src/logging/index.ts +4 -6
  100. package/src/mapper/credential-constraints.ts +1 -1
  101. package/src/mapper/credential-mapper.ts +27 -27
  102. package/src/types/cose.ts +4 -4
  103. package/src/types/index.ts +1 -1
  104. package/src/types/mso_mdoc.ts +23 -23
  105. package/src/types/sd-jwt-vc.ts +3 -3
  106. package/src/types/status-list.ts +2 -2
  107. package/src/types/vc.ts +3 -3
  108. package/src/types/w3c-vc.ts +2 -2
  109. package/src/utils/hasher.ts +2 -5
  110. package/dist/index.cjs +0 -1734
  111. package/dist/index.cjs.map +0 -1
  112. package/dist/index.d.cts +0 -1559
@@ -0,0 +1,116 @@
1
+ import { EventEmitter } from 'events';
2
+ export declare enum System {
3
+ GENERAL = "general",
4
+ KMS = "kms",
5
+ IDENTITY = "identity",
6
+ OID4VCI = "oid4vci",
7
+ OID4VP = "oid4vp",
8
+ SIOPv2 = "siopv2",
9
+ PE = "PE",
10
+ CREDENTIALS = "credentials",
11
+ WEB3 = "web3",
12
+ PROFILE = "profile",
13
+ CONTACT = "contact"
14
+ }
15
+ export declare enum SubSystem {
16
+ KEY = "key",
17
+ DID_PROVIDER = "did_provider",
18
+ DID_RESOLVER = "did_resolver",
19
+ OID4VP_OP = "oid4vp_op",
20
+ OID4VCI_CLIENT = "oid4vci_client",
21
+ SIOPv2_OP = "siopv2_op",
22
+ CONTACT_MANAGER = "contact_manager",
23
+ VC_ISSUER = "vc_issuer",
24
+ VC_VERIFIER = "vc_verifier",
25
+ VC_PERSISTENCE = "vc_persistence",
26
+ TRANSPORT = "transport",
27
+ PROFILE = "profile",
28
+ API = "api"
29
+ }
30
+ export declare enum ActionType {
31
+ CREATE = "create",
32
+ READ = "read",
33
+ UPDATE = "update",
34
+ DELETE = "delete",
35
+ EXECUTE = "execute"
36
+ }
37
+ export declare enum DefaultActionSubType {
38
+ KEY_GENERATION = "Key generation",
39
+ KEY_IMPORT = "Key import",
40
+ KEY_PERSISTENCE = "Key persistence",
41
+ KEY_REMOVAL = "Key removal",
42
+ DID_CREATION = "DID creation",
43
+ DID_RESOLUTION = "DID resolution",
44
+ DID_SERVICE_UPDATE = "DID service update",
45
+ VC_ISSUE = "VC issue",
46
+ VC_VERIFY = "VC verify",
47
+ VC_SHARE = "VC share",
48
+ VC_DELETE = "VC delete",
49
+ VC_ISSUE_DECLINE = "VC issue decline",
50
+ VC_SHARE_DECLINE = "VC share decline"
51
+ }
52
+ export type ActionSubType = DefaultActionSubType | string;
53
+ export declare enum InitiatorType {
54
+ USER = "user",
55
+ SYSTEM = "system",
56
+ EXTERNAL = "external"
57
+ }
58
+ export declare enum SystemCorrelationIdType {
59
+ DID = "did",
60
+ URL = "url",
61
+ EMAIL = "email",
62
+ HOSTNAME = "hostname",
63
+ PHONE = "phone",
64
+ USER = "user"
65
+ }
66
+ export type EventData = {
67
+ system: string;
68
+ subSystemType: string;
69
+ };
70
+ export interface BasicEvent<SourceType, PayloadType extends EventData> {
71
+ id: string;
72
+ correlationId?: string;
73
+ eventName: string;
74
+ initiator?: string;
75
+ initiatorType: InitiatorType;
76
+ system: System;
77
+ subsystem: SubSystem;
78
+ data: PayloadType;
79
+ }
80
+ export declare class EventManager {
81
+ private static readonly INSTANCE;
82
+ private _emitters;
83
+ private constructor();
84
+ static instance(): EventManager;
85
+ register(name: string, emitter: EventEmitter, opts?: {
86
+ disabled: boolean;
87
+ }): EventEmitter;
88
+ get(name: string, opts?: {
89
+ onlyEnabled?: boolean;
90
+ }): EventEmitter;
91
+ getOrCreate(name: string, opts?: {
92
+ onlyEnabled?: boolean;
93
+ }): EventEmitter;
94
+ has(name: string): boolean;
95
+ emitters(filter?: {
96
+ eventName?: string | symbol;
97
+ onlyEnabled?: boolean;
98
+ }): Array<EventEmitter>;
99
+ hasEventName(eventName: string | symbol): boolean;
100
+ eventNames(): Array<string | symbol>;
101
+ emitBasic(event: BasicEvent<any, any>, ...args: any[]): void;
102
+ emit(eventName: string | symbol, event: Omit<BasicEvent<any, any>, 'eventName'> | any, ...args: any[]): void;
103
+ listenerCount(eventName: string | symbol): number;
104
+ listeners(filter: {
105
+ emitterName?: string;
106
+ eventName: string;
107
+ onlyEnabled?: boolean;
108
+ }): Array<Function>;
109
+ private emittersImpl;
110
+ }
111
+ export declare class BasicEventEmitter extends EventEmitter {
112
+ addListener(eventName: string | symbol, listener: (event: BasicEvent<any, any>, ...args: any[]) => void): this;
113
+ once(eventName: string | symbol, listener: (event: BasicEvent<any, any>, ...args: any[]) => void): this;
114
+ emit(eventName: string, event: BasicEvent<any, any>, ...args: any[]): boolean;
115
+ }
116
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BasicEventEmitter = exports.EventManager = exports.SystemCorrelationIdType = exports.InitiatorType = exports.DefaultActionSubType = exports.ActionType = exports.SubSystem = exports.System = void 0;
4
+ const events_1 = require("events");
5
+ const logging_1 = require("../logging");
6
+ var System;
7
+ (function (System) {
8
+ System["GENERAL"] = "general";
9
+ System["KMS"] = "kms";
10
+ System["IDENTITY"] = "identity";
11
+ System["OID4VCI"] = "oid4vci";
12
+ System["OID4VP"] = "oid4vp";
13
+ System["SIOPv2"] = "siopv2";
14
+ System["PE"] = "PE";
15
+ System["CREDENTIALS"] = "credentials";
16
+ System["WEB3"] = "web3";
17
+ System["PROFILE"] = "profile";
18
+ System["CONTACT"] = "contact";
19
+ })(System || (exports.System = System = {}));
20
+ var SubSystem;
21
+ (function (SubSystem) {
22
+ SubSystem["KEY"] = "key";
23
+ SubSystem["DID_PROVIDER"] = "did_provider";
24
+ SubSystem["DID_RESOLVER"] = "did_resolver";
25
+ SubSystem["OID4VP_OP"] = "oid4vp_op";
26
+ SubSystem["OID4VCI_CLIENT"] = "oid4vci_client";
27
+ SubSystem["SIOPv2_OP"] = "siopv2_op";
28
+ SubSystem["CONTACT_MANAGER"] = "contact_manager";
29
+ SubSystem["VC_ISSUER"] = "vc_issuer";
30
+ SubSystem["VC_VERIFIER"] = "vc_verifier";
31
+ SubSystem["VC_PERSISTENCE"] = "vc_persistence";
32
+ SubSystem["TRANSPORT"] = "transport";
33
+ SubSystem["PROFILE"] = "profile";
34
+ SubSystem["API"] = "api";
35
+ })(SubSystem || (exports.SubSystem = SubSystem = {}));
36
+ var ActionType;
37
+ (function (ActionType) {
38
+ ActionType["CREATE"] = "create";
39
+ ActionType["READ"] = "read";
40
+ ActionType["UPDATE"] = "update";
41
+ ActionType["DELETE"] = "delete";
42
+ ActionType["EXECUTE"] = "execute";
43
+ })(ActionType || (exports.ActionType = ActionType = {}));
44
+ var DefaultActionSubType;
45
+ (function (DefaultActionSubType) {
46
+ DefaultActionSubType["KEY_GENERATION"] = "Key generation";
47
+ DefaultActionSubType["KEY_IMPORT"] = "Key import";
48
+ DefaultActionSubType["KEY_PERSISTENCE"] = "Key persistence";
49
+ DefaultActionSubType["KEY_REMOVAL"] = "Key removal";
50
+ DefaultActionSubType["DID_CREATION"] = "DID creation";
51
+ DefaultActionSubType["DID_RESOLUTION"] = "DID resolution";
52
+ DefaultActionSubType["DID_SERVICE_UPDATE"] = "DID service update";
53
+ DefaultActionSubType["VC_ISSUE"] = "VC issue";
54
+ DefaultActionSubType["VC_VERIFY"] = "VC verify";
55
+ DefaultActionSubType["VC_SHARE"] = "VC share";
56
+ DefaultActionSubType["VC_DELETE"] = "VC delete";
57
+ DefaultActionSubType["VC_ISSUE_DECLINE"] = "VC issue decline";
58
+ DefaultActionSubType["VC_SHARE_DECLINE"] = "VC share decline";
59
+ })(DefaultActionSubType || (exports.DefaultActionSubType = DefaultActionSubType = {}));
60
+ var InitiatorType;
61
+ (function (InitiatorType) {
62
+ InitiatorType["USER"] = "user";
63
+ InitiatorType["SYSTEM"] = "system";
64
+ InitiatorType["EXTERNAL"] = "external";
65
+ })(InitiatorType || (exports.InitiatorType = InitiatorType = {}));
66
+ var SystemCorrelationIdType;
67
+ (function (SystemCorrelationIdType) {
68
+ SystemCorrelationIdType["DID"] = "did";
69
+ SystemCorrelationIdType["URL"] = "url";
70
+ SystemCorrelationIdType["EMAIL"] = "email";
71
+ SystemCorrelationIdType["HOSTNAME"] = "hostname";
72
+ SystemCorrelationIdType["PHONE"] = "phone";
73
+ SystemCorrelationIdType["USER"] = "user";
74
+ })(SystemCorrelationIdType || (exports.SystemCorrelationIdType = SystemCorrelationIdType = {}));
75
+ class EventManager {
76
+ constructor() {
77
+ this._emitters = new Map();
78
+ }
79
+ static instance() {
80
+ return EventManager.INSTANCE;
81
+ }
82
+ register(name, emitter, opts) {
83
+ this._emitters.set(name, { emitter, enabled: (opts === null || opts === void 0 ? void 0 : opts.disabled) !== true });
84
+ return emitter;
85
+ }
86
+ get(name, opts) {
87
+ var _a;
88
+ const { emitter, enabled } = (_a = this._emitters.get(name)) !== null && _a !== void 0 ? _a : {};
89
+ if (!emitter) {
90
+ throw Error(`No emitter registered with name ${name}`);
91
+ }
92
+ else if ((opts === null || opts === void 0 ? void 0 : opts.onlyEnabled) && !enabled) {
93
+ throw Error(`Emitter with name ${name} is not enabled`);
94
+ }
95
+ return emitter;
96
+ }
97
+ getOrCreate(name, opts) {
98
+ if (this.has(name)) {
99
+ return this.get(name, opts);
100
+ }
101
+ return this.register(name, new BasicEventEmitter());
102
+ }
103
+ has(name) {
104
+ return this._emitters.has(name);
105
+ }
106
+ emitters(filter) {
107
+ const all = Array.from(new Set(this._emitters.values()));
108
+ return this.emittersImpl(all, filter).map((e) => e.emitter);
109
+ }
110
+ hasEventName(eventName) {
111
+ return this.eventNames().includes(eventName);
112
+ }
113
+ eventNames() {
114
+ return Array.from(new Set(this.emitters().flatMap((emitter) => emitter.eventNames())));
115
+ }
116
+ emitBasic(event, ...args) {
117
+ return this.emit(event.eventName, event, args);
118
+ }
119
+ emit(eventName, event, ...args) {
120
+ if ('id' in event && 'system' in event && !event.eventName) {
121
+ event.eventName = eventName;
122
+ }
123
+ logging_1.Loggers.DEFAULT.options('sphereon:events', {
124
+ methods: [logging_1.LogMethod.CONSOLE],
125
+ defaultLogLevel: logging_1.LogLevel.INFO,
126
+ })
127
+ .get('sphereon:events')
128
+ .log(`Emitting '${eventName.toString()}' event`, event);
129
+ const emitters = this.emitters({ eventName });
130
+ emitters.flatMap((emitter) => emitter.emit(eventName, event, args));
131
+ }
132
+ listenerCount(eventName) {
133
+ const emitters = this.emitters({ eventName });
134
+ return emitters.map((emitter) => emitter.listenerCount(eventName)).reduce((previous, current) => current + previous);
135
+ }
136
+ listeners(filter) {
137
+ const emitters = (filter === null || filter === void 0 ? void 0 : filter.emitterName) ? [this.get(filter.emitterName, filter)] : this.emitters(filter);
138
+ return Array.from(new Set(this.emittersImpl(emitters.map((emitter) => {
139
+ return { emitter, enabled: true };
140
+ }), filter).flatMap((emitter) => emitter.emitter.listeners(filter.eventName))));
141
+ }
142
+ emittersImpl(all, filter) {
143
+ const { eventName } = filter !== null && filter !== void 0 ? filter : {};
144
+ if (!eventName) {
145
+ return all;
146
+ }
147
+ const filtered = all.filter((emitter) => emitter.emitter.eventNames().includes(eventName) && (emitter.enabled || (filter === null || filter === void 0 ? void 0 : filter.onlyEnabled) !== true));
148
+ return Array.from(new Set(filtered));
149
+ }
150
+ }
151
+ exports.EventManager = EventManager;
152
+ EventManager.INSTANCE = new EventManager();
153
+ class BasicEventEmitter extends events_1.EventEmitter {
154
+ addListener(eventName, listener) {
155
+ return super.addListener(eventName, listener);
156
+ }
157
+ once(eventName, listener) {
158
+ return super.once(eventName, listener);
159
+ }
160
+ emit(eventName, event, ...args) {
161
+ return super.emit(eventName, ...args);
162
+ }
163
+ }
164
+ exports.BasicEventEmitter = BasicEventEmitter;
165
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"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"}