@sphereon/ssi-sdk.vc-status-list 0.34.0 → 0.34.1-feature.SSISDK.17.bitstring.sl.11
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.cjs +424 -45
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +76 -26
- package/dist/index.d.ts +76 -26
- package/dist/index.js +425 -46
- package/dist/index.js.map +1 -1
- package/package.json +5 -3
- package/src/functions.ts +50 -14
- package/src/impl/BitstringStatusListImplementation.ts +347 -0
- package/src/impl/IStatusList.ts +66 -4
- package/src/impl/OAuthStatusList.ts +60 -18
- package/src/impl/StatusList2021.ts +47 -12
- package/src/impl/StatusListFactory.ts +2 -0
- package/src/types/BitstringStatusList.ts +4 -0
- package/src/types/index.ts +71 -22
- package/src/utils.ts +35 -2
package/dist/index.d.cts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { IIdentifierResolution } from '@sphereon/ssi-sdk-ext.identifier-resolution';
|
|
2
|
-
import { StatusListIndexingDirection, StatusPurpose2021, StatusListType, IIssuer, CredentialProofFormat, StatusListDriverType, StatusListCredential,
|
|
2
|
+
import { StatusListIndexingDirection, StatusPurpose2021, StatusListType, IIssuer, CredentialProofFormat, StatusListDriverType, StatusListCredential, ICredentialStatus, OrPromise, ICredential, IVerifiableCredential } from '@sphereon/ssi-types';
|
|
3
3
|
import { IPluginMethodMap, IAgentContext, ICredentialIssuer, ICredentialVerifier, IKeyManager, ICredentialPlugin, CredentialPayload } from '@veramo/core';
|
|
4
4
|
import { DataSource } from 'typeorm';
|
|
5
5
|
import { BitsPerStatus } from '@sd-jwt/jwt-status-list';
|
|
6
6
|
import { SdJwtVcPayload } from '@sd-jwt/sd-jwt-vc';
|
|
7
7
|
import { StatusListOpts } from '@sphereon/oid4vci-common';
|
|
8
|
+
import { BitstringStatusPurpose } from '@4sure-tech/vc-bitstring-status-lists';
|
|
9
|
+
import { IAddStatusListArgs, StatusListEntity, IStatusListEntryEntity, IBitstringStatusListEntryEntity } from '@sphereon/ssi-sdk.data-store';
|
|
8
10
|
import { StatusMethod } from 'credential-status';
|
|
9
11
|
|
|
10
12
|
declare enum StatusOAuth {
|
|
@@ -16,14 +18,22 @@ declare enum Status2021 {
|
|
|
16
18
|
Valid = 0,
|
|
17
19
|
Invalid = 1
|
|
18
20
|
}
|
|
21
|
+
type BitstringStatus = number;
|
|
19
22
|
type StatusList2021Args = {
|
|
20
23
|
indexingDirection: StatusListIndexingDirection;
|
|
21
24
|
statusPurpose?: StatusPurpose2021;
|
|
22
25
|
};
|
|
23
26
|
type OAuthStatusListArgs = {
|
|
24
|
-
bitsPerStatus
|
|
27
|
+
bitsPerStatus: BitsPerStatus;
|
|
25
28
|
expiresAt?: Date;
|
|
26
29
|
};
|
|
30
|
+
type BitstringStatusListArgs = {
|
|
31
|
+
statusPurpose: BitstringStatusPurpose;
|
|
32
|
+
bitsPerStatus: number;
|
|
33
|
+
ttl?: number;
|
|
34
|
+
validFrom?: Date;
|
|
35
|
+
validUntil?: Date;
|
|
36
|
+
};
|
|
27
37
|
type BaseCreateNewStatusListArgs = {
|
|
28
38
|
type: StatusListType;
|
|
29
39
|
id: string;
|
|
@@ -34,6 +44,7 @@ type BaseCreateNewStatusListArgs = {
|
|
|
34
44
|
keyRef?: string;
|
|
35
45
|
statusList2021?: StatusList2021Args;
|
|
36
46
|
oauthStatusList?: OAuthStatusListArgs;
|
|
47
|
+
bitstringStatusList?: BitstringStatusListArgs;
|
|
37
48
|
driverType?: StatusListDriverType;
|
|
38
49
|
};
|
|
39
50
|
type UpdateStatusList2021Args = {
|
|
@@ -43,10 +54,17 @@ type UpdateOAuthStatusListArgs = {
|
|
|
43
54
|
bitsPerStatus: BitsPerStatus;
|
|
44
55
|
expiresAt?: Date;
|
|
45
56
|
};
|
|
57
|
+
type UpdateBitstringStatusListArgs = {
|
|
58
|
+
statusPurpose: BitstringStatusPurpose;
|
|
59
|
+
bitsPerStatus: number;
|
|
60
|
+
validFrom?: Date;
|
|
61
|
+
validUntil?: Date;
|
|
62
|
+
ttl?: number;
|
|
63
|
+
};
|
|
46
64
|
interface UpdateStatusListFromEncodedListArgs {
|
|
47
65
|
type?: StatusListType;
|
|
48
66
|
statusListIndex: number | string;
|
|
49
|
-
value:
|
|
67
|
+
value: number;
|
|
50
68
|
proofFormat?: CredentialProofFormat;
|
|
51
69
|
keyRef?: string;
|
|
52
70
|
correlationId?: string;
|
|
@@ -55,35 +73,47 @@ interface UpdateStatusListFromEncodedListArgs {
|
|
|
55
73
|
id: string;
|
|
56
74
|
statusList2021?: UpdateStatusList2021Args;
|
|
57
75
|
oauthStatusList?: UpdateOAuthStatusListArgs;
|
|
76
|
+
bitstringStatusList?: UpdateBitstringStatusListArgs;
|
|
58
77
|
}
|
|
59
78
|
interface UpdateStatusListFromStatusListCredentialArgs {
|
|
60
79
|
statusListCredential: StatusListCredential;
|
|
61
80
|
keyRef?: string;
|
|
62
81
|
statusListIndex: number | string;
|
|
63
|
-
value: number | Status2021 | StatusOAuth;
|
|
82
|
+
value: number | Status2021 | StatusOAuth | BitstringStatus;
|
|
64
83
|
}
|
|
65
84
|
interface StatusListResult {
|
|
85
|
+
id: string;
|
|
66
86
|
encodedList: string;
|
|
67
|
-
|
|
68
|
-
length: number;
|
|
87
|
+
issuer: string | IIssuer;
|
|
69
88
|
type: StatusListType;
|
|
70
89
|
proofFormat: CredentialProofFormat;
|
|
71
|
-
|
|
90
|
+
length: number;
|
|
91
|
+
statusListCredential: StatusListCredential;
|
|
72
92
|
statuslistContentType: string;
|
|
73
|
-
issuer: string | IIssuer;
|
|
74
|
-
statusList2021?: StatusList2021Details;
|
|
75
|
-
oauthStatusList?: OAuthStatusDetails;
|
|
76
93
|
correlationId?: string;
|
|
77
94
|
driverType?: StatusListDriverType;
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
indexingDirection: StatusListIndexingDirection;
|
|
82
|
-
statusPurpose?: StatusPurpose2021;
|
|
83
|
-
}
|
|
84
|
-
interface OAuthStatusDetails {
|
|
85
|
-
bitsPerStatus?: BitsPerStatus;
|
|
95
|
+
indexingDirection?: StatusListIndexingDirection;
|
|
96
|
+
statusPurpose?: StatusPurpose2021 | BitstringStatusPurpose | BitstringStatusPurpose[];
|
|
97
|
+
bitsPerStatus?: number;
|
|
86
98
|
expiresAt?: Date;
|
|
99
|
+
validFrom?: Date;
|
|
100
|
+
validUntil?: Date;
|
|
101
|
+
ttl?: number;
|
|
102
|
+
statusList2021?: {
|
|
103
|
+
indexingDirection: StatusListIndexingDirection;
|
|
104
|
+
statusPurpose: StatusPurpose2021;
|
|
105
|
+
};
|
|
106
|
+
oauthStatusList?: {
|
|
107
|
+
bitsPerStatus: number;
|
|
108
|
+
expiresAt?: Date;
|
|
109
|
+
};
|
|
110
|
+
bitstringStatusList?: {
|
|
111
|
+
statusPurpose: BitstringStatusPurpose | BitstringStatusPurpose[];
|
|
112
|
+
bitsPerStatus?: number;
|
|
113
|
+
validFrom?: Date;
|
|
114
|
+
validUntil?: Date;
|
|
115
|
+
ttl?: number;
|
|
116
|
+
};
|
|
87
117
|
}
|
|
88
118
|
interface StatusList2021EntryCredentialStatus extends ICredentialStatus {
|
|
89
119
|
type: 'StatusList2021Entry';
|
|
@@ -98,6 +128,15 @@ interface StatusListOAuthEntryCredentialStatus extends ICredentialStatus {
|
|
|
98
128
|
statusListCredential: string;
|
|
99
129
|
expiresAt?: Date;
|
|
100
130
|
}
|
|
131
|
+
interface BitstringStatusListEntryCredentialStatus extends ICredentialStatus {
|
|
132
|
+
type: 'BitstringStatusListEntry';
|
|
133
|
+
statusPurpose: BitstringStatusPurpose | BitstringStatusPurpose[];
|
|
134
|
+
statusListIndex: string;
|
|
135
|
+
statusListCredential: string;
|
|
136
|
+
bitsPerStatus?: number;
|
|
137
|
+
statusMessage?: Array<BitstringStatus>;
|
|
138
|
+
statusReference?: string | string[];
|
|
139
|
+
}
|
|
101
140
|
interface StatusList2021ToVerifiableCredentialArgs {
|
|
102
141
|
issuer: string | IIssuer;
|
|
103
142
|
id: string;
|
|
@@ -116,22 +155,26 @@ interface CreateStatusListArgs {
|
|
|
116
155
|
length?: number;
|
|
117
156
|
statusList2021?: StatusList2021Args;
|
|
118
157
|
oauthStatusList?: OAuthStatusListArgs;
|
|
158
|
+
bitstringStatusList?: BitstringStatusListArgs;
|
|
119
159
|
}
|
|
120
160
|
interface UpdateStatusListIndexArgs {
|
|
121
161
|
statusListCredential: StatusListCredential;
|
|
122
162
|
statusListIndex: number | string;
|
|
123
|
-
value: number | Status2021 | StatusOAuth;
|
|
163
|
+
value: number | Status2021 | StatusOAuth | BitstringStatus;
|
|
164
|
+
bitsPerStatus?: number;
|
|
124
165
|
keyRef?: string;
|
|
125
166
|
expiresAt?: Date;
|
|
126
167
|
}
|
|
127
168
|
interface CheckStatusIndexArgs {
|
|
128
169
|
statusListCredential: StatusListCredential;
|
|
129
170
|
statusListIndex: string | number;
|
|
171
|
+
bitsPerStatus?: number;
|
|
130
172
|
}
|
|
131
173
|
interface ToStatusListDetailsArgs {
|
|
132
174
|
statusListPayload: StatusListCredential;
|
|
133
175
|
correlationId?: string;
|
|
134
176
|
driverType?: StatusListDriverType;
|
|
177
|
+
bitsPerStatus?: number;
|
|
135
178
|
}
|
|
136
179
|
/**
|
|
137
180
|
* The interface definition for a plugin that can add statuslist info to a credential
|
|
@@ -254,22 +297,29 @@ declare function simpleCheckStatusFromStatusListUrl(args: {
|
|
|
254
297
|
type?: StatusListType | 'StatusList2021Entry';
|
|
255
298
|
id?: string;
|
|
256
299
|
statusListIndex: string;
|
|
257
|
-
}): Promise<number | Status2021 | StatusOAuth>;
|
|
300
|
+
}): Promise<number | Status2021 | StatusOAuth | BitstringStatus>;
|
|
258
301
|
declare function checkStatusIndexFromStatusListCredential(args: {
|
|
259
302
|
statusListCredential: StatusListCredential;
|
|
260
|
-
statusPurpose?: StatusPurpose2021;
|
|
261
|
-
type?: StatusListType | 'StatusList2021Entry';
|
|
303
|
+
statusPurpose?: StatusPurpose2021 | string | string[];
|
|
304
|
+
type?: StatusListType | 'StatusList2021Entry' | 'BitstringStatusListEntry';
|
|
262
305
|
id?: string;
|
|
263
306
|
statusListIndex: string | number;
|
|
264
|
-
|
|
307
|
+
bitsPerStatus?: number;
|
|
308
|
+
}): Promise<number | Status2021 | StatusOAuth | BitstringStatus>;
|
|
265
309
|
declare function createNewStatusList(args: CreateNewStatusListFuncArgs, context: IAgentContext<(ICredentialPlugin | any) & IIdentifierResolution>): Promise<StatusListResult>;
|
|
266
310
|
declare function updateStatusIndexFromStatusListCredential(args: UpdateStatusListIndexArgs, context: IAgentContext<ICredentialPlugin & IIdentifierResolution>): Promise<StatusListResult>;
|
|
267
|
-
declare function statusListCredentialToDetails(
|
|
311
|
+
declare function statusListCredentialToDetails({ correlationId, driverType, statusListCredential, bitsPerStatus, }: {
|
|
268
312
|
statusListCredential: StatusListCredential;
|
|
269
313
|
correlationId?: string;
|
|
270
314
|
driverType?: StatusListDriverType;
|
|
271
|
-
|
|
315
|
+
bitsPerStatus?: number;
|
|
316
|
+
}): Promise<StatusListResult & Partial<IAddStatusListArgs>>;
|
|
317
|
+
declare function createCredentialStatusFromStatusList(args: {
|
|
318
|
+
statusList: StatusListEntity;
|
|
319
|
+
statusListEntry: IStatusListEntryEntity | IBitstringStatusListEntryEntity;
|
|
320
|
+
statusListIndex: number;
|
|
321
|
+
}): Promise<StatusList2021EntryCredentialStatus | StatusListOAuthEntryCredentialStatus | BitstringStatusListEntryCredentialStatus>;
|
|
272
322
|
declare function updateStatusListIndexFromEncodedList(args: UpdateStatusListFromEncodedListArgs, context: IAgentContext<ICredentialPlugin & IIdentifierResolution>): Promise<StatusListResult>;
|
|
273
323
|
declare function statusList2021ToVerifiableCredential(args: StatusList2021ToVerifiableCredentialArgs, context: IAgentContext<ICredentialPlugin & IIdentifierResolution>): Promise<StatusListCredential>;
|
|
274
324
|
|
|
275
|
-
export { type BaseCreateNewStatusListArgs, type CheckStatusIndexArgs, type CreateNewStatusListArgs, type CreateNewStatusListFuncArgs, type CreateStatusListArgs, type CredentialWithStatusSupport, type GetStatusListArgs, type IAddStatusToCredentialArgs, type IAddStatusToSdJwtCredentialArgs, type IIssueCredentialStatusOpts, type IRequiredContext, type IRequiredPlugins, type IStatusListPlugin, type OAuthStatusListArgs, type SignedStatusListData, Status2021, type StatusList2021Args, type StatusList2021EntryCredentialStatus, type StatusList2021ToVerifiableCredentialArgs, type StatusListOAuthEntryCredentialStatus, type StatusListResult, StatusOAuth, type ToStatusListDetailsArgs, type UpdateOAuthStatusListArgs, type UpdateStatusList2021Args, type UpdateStatusListFromEncodedListArgs, type UpdateStatusListFromStatusListCredentialArgs, type UpdateStatusListIndexArgs, checkStatusForCredential, checkStatusIndexFromStatusListCredential, createNewStatusList, fetchStatusListCredential, simpleCheckStatusFromStatusListUrl, statusList2021ToVerifiableCredential, statusListCredentialToDetails, statusPluginStatusFunction, updateStatusIndexFromStatusListCredential, updateStatusListIndexFromEncodedList, vcLibCheckStatusFunction };
|
|
325
|
+
export { type BaseCreateNewStatusListArgs, type BitstringStatus, type BitstringStatusListArgs, type BitstringStatusListEntryCredentialStatus, type CheckStatusIndexArgs, type CreateNewStatusListArgs, type CreateNewStatusListFuncArgs, type CreateStatusListArgs, type CredentialWithStatusSupport, type GetStatusListArgs, type IAddStatusToCredentialArgs, type IAddStatusToSdJwtCredentialArgs, type IIssueCredentialStatusOpts, type IRequiredContext, type IRequiredPlugins, type IStatusListPlugin, type OAuthStatusListArgs, type SignedStatusListData, Status2021, type StatusList2021Args, type StatusList2021EntryCredentialStatus, type StatusList2021ToVerifiableCredentialArgs, type StatusListOAuthEntryCredentialStatus, type StatusListResult, StatusOAuth, type ToStatusListDetailsArgs, type UpdateBitstringStatusListArgs, type UpdateOAuthStatusListArgs, type UpdateStatusList2021Args, type UpdateStatusListFromEncodedListArgs, type UpdateStatusListFromStatusListCredentialArgs, type UpdateStatusListIndexArgs, checkStatusForCredential, checkStatusIndexFromStatusListCredential, createCredentialStatusFromStatusList, createNewStatusList, fetchStatusListCredential, simpleCheckStatusFromStatusListUrl, statusList2021ToVerifiableCredential, statusListCredentialToDetails, statusPluginStatusFunction, updateStatusIndexFromStatusListCredential, updateStatusListIndexFromEncodedList, vcLibCheckStatusFunction };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { IIdentifierResolution } from '@sphereon/ssi-sdk-ext.identifier-resolution';
|
|
2
|
-
import { StatusListIndexingDirection, StatusPurpose2021, StatusListType, IIssuer, CredentialProofFormat, StatusListDriverType, StatusListCredential,
|
|
2
|
+
import { StatusListIndexingDirection, StatusPurpose2021, StatusListType, IIssuer, CredentialProofFormat, StatusListDriverType, StatusListCredential, ICredentialStatus, OrPromise, ICredential, IVerifiableCredential } from '@sphereon/ssi-types';
|
|
3
3
|
import { IPluginMethodMap, IAgentContext, ICredentialIssuer, ICredentialVerifier, IKeyManager, ICredentialPlugin, CredentialPayload } from '@veramo/core';
|
|
4
4
|
import { DataSource } from 'typeorm';
|
|
5
5
|
import { BitsPerStatus } from '@sd-jwt/jwt-status-list';
|
|
6
6
|
import { SdJwtVcPayload } from '@sd-jwt/sd-jwt-vc';
|
|
7
7
|
import { StatusListOpts } from '@sphereon/oid4vci-common';
|
|
8
|
+
import { BitstringStatusPurpose } from '@4sure-tech/vc-bitstring-status-lists';
|
|
9
|
+
import { IAddStatusListArgs, StatusListEntity, IStatusListEntryEntity, IBitstringStatusListEntryEntity } from '@sphereon/ssi-sdk.data-store';
|
|
8
10
|
import { StatusMethod } from 'credential-status';
|
|
9
11
|
|
|
10
12
|
declare enum StatusOAuth {
|
|
@@ -16,14 +18,22 @@ declare enum Status2021 {
|
|
|
16
18
|
Valid = 0,
|
|
17
19
|
Invalid = 1
|
|
18
20
|
}
|
|
21
|
+
type BitstringStatus = number;
|
|
19
22
|
type StatusList2021Args = {
|
|
20
23
|
indexingDirection: StatusListIndexingDirection;
|
|
21
24
|
statusPurpose?: StatusPurpose2021;
|
|
22
25
|
};
|
|
23
26
|
type OAuthStatusListArgs = {
|
|
24
|
-
bitsPerStatus
|
|
27
|
+
bitsPerStatus: BitsPerStatus;
|
|
25
28
|
expiresAt?: Date;
|
|
26
29
|
};
|
|
30
|
+
type BitstringStatusListArgs = {
|
|
31
|
+
statusPurpose: BitstringStatusPurpose;
|
|
32
|
+
bitsPerStatus: number;
|
|
33
|
+
ttl?: number;
|
|
34
|
+
validFrom?: Date;
|
|
35
|
+
validUntil?: Date;
|
|
36
|
+
};
|
|
27
37
|
type BaseCreateNewStatusListArgs = {
|
|
28
38
|
type: StatusListType;
|
|
29
39
|
id: string;
|
|
@@ -34,6 +44,7 @@ type BaseCreateNewStatusListArgs = {
|
|
|
34
44
|
keyRef?: string;
|
|
35
45
|
statusList2021?: StatusList2021Args;
|
|
36
46
|
oauthStatusList?: OAuthStatusListArgs;
|
|
47
|
+
bitstringStatusList?: BitstringStatusListArgs;
|
|
37
48
|
driverType?: StatusListDriverType;
|
|
38
49
|
};
|
|
39
50
|
type UpdateStatusList2021Args = {
|
|
@@ -43,10 +54,17 @@ type UpdateOAuthStatusListArgs = {
|
|
|
43
54
|
bitsPerStatus: BitsPerStatus;
|
|
44
55
|
expiresAt?: Date;
|
|
45
56
|
};
|
|
57
|
+
type UpdateBitstringStatusListArgs = {
|
|
58
|
+
statusPurpose: BitstringStatusPurpose;
|
|
59
|
+
bitsPerStatus: number;
|
|
60
|
+
validFrom?: Date;
|
|
61
|
+
validUntil?: Date;
|
|
62
|
+
ttl?: number;
|
|
63
|
+
};
|
|
46
64
|
interface UpdateStatusListFromEncodedListArgs {
|
|
47
65
|
type?: StatusListType;
|
|
48
66
|
statusListIndex: number | string;
|
|
49
|
-
value:
|
|
67
|
+
value: number;
|
|
50
68
|
proofFormat?: CredentialProofFormat;
|
|
51
69
|
keyRef?: string;
|
|
52
70
|
correlationId?: string;
|
|
@@ -55,35 +73,47 @@ interface UpdateStatusListFromEncodedListArgs {
|
|
|
55
73
|
id: string;
|
|
56
74
|
statusList2021?: UpdateStatusList2021Args;
|
|
57
75
|
oauthStatusList?: UpdateOAuthStatusListArgs;
|
|
76
|
+
bitstringStatusList?: UpdateBitstringStatusListArgs;
|
|
58
77
|
}
|
|
59
78
|
interface UpdateStatusListFromStatusListCredentialArgs {
|
|
60
79
|
statusListCredential: StatusListCredential;
|
|
61
80
|
keyRef?: string;
|
|
62
81
|
statusListIndex: number | string;
|
|
63
|
-
value: number | Status2021 | StatusOAuth;
|
|
82
|
+
value: number | Status2021 | StatusOAuth | BitstringStatus;
|
|
64
83
|
}
|
|
65
84
|
interface StatusListResult {
|
|
85
|
+
id: string;
|
|
66
86
|
encodedList: string;
|
|
67
|
-
|
|
68
|
-
length: number;
|
|
87
|
+
issuer: string | IIssuer;
|
|
69
88
|
type: StatusListType;
|
|
70
89
|
proofFormat: CredentialProofFormat;
|
|
71
|
-
|
|
90
|
+
length: number;
|
|
91
|
+
statusListCredential: StatusListCredential;
|
|
72
92
|
statuslistContentType: string;
|
|
73
|
-
issuer: string | IIssuer;
|
|
74
|
-
statusList2021?: StatusList2021Details;
|
|
75
|
-
oauthStatusList?: OAuthStatusDetails;
|
|
76
93
|
correlationId?: string;
|
|
77
94
|
driverType?: StatusListDriverType;
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
indexingDirection: StatusListIndexingDirection;
|
|
82
|
-
statusPurpose?: StatusPurpose2021;
|
|
83
|
-
}
|
|
84
|
-
interface OAuthStatusDetails {
|
|
85
|
-
bitsPerStatus?: BitsPerStatus;
|
|
95
|
+
indexingDirection?: StatusListIndexingDirection;
|
|
96
|
+
statusPurpose?: StatusPurpose2021 | BitstringStatusPurpose | BitstringStatusPurpose[];
|
|
97
|
+
bitsPerStatus?: number;
|
|
86
98
|
expiresAt?: Date;
|
|
99
|
+
validFrom?: Date;
|
|
100
|
+
validUntil?: Date;
|
|
101
|
+
ttl?: number;
|
|
102
|
+
statusList2021?: {
|
|
103
|
+
indexingDirection: StatusListIndexingDirection;
|
|
104
|
+
statusPurpose: StatusPurpose2021;
|
|
105
|
+
};
|
|
106
|
+
oauthStatusList?: {
|
|
107
|
+
bitsPerStatus: number;
|
|
108
|
+
expiresAt?: Date;
|
|
109
|
+
};
|
|
110
|
+
bitstringStatusList?: {
|
|
111
|
+
statusPurpose: BitstringStatusPurpose | BitstringStatusPurpose[];
|
|
112
|
+
bitsPerStatus?: number;
|
|
113
|
+
validFrom?: Date;
|
|
114
|
+
validUntil?: Date;
|
|
115
|
+
ttl?: number;
|
|
116
|
+
};
|
|
87
117
|
}
|
|
88
118
|
interface StatusList2021EntryCredentialStatus extends ICredentialStatus {
|
|
89
119
|
type: 'StatusList2021Entry';
|
|
@@ -98,6 +128,15 @@ interface StatusListOAuthEntryCredentialStatus extends ICredentialStatus {
|
|
|
98
128
|
statusListCredential: string;
|
|
99
129
|
expiresAt?: Date;
|
|
100
130
|
}
|
|
131
|
+
interface BitstringStatusListEntryCredentialStatus extends ICredentialStatus {
|
|
132
|
+
type: 'BitstringStatusListEntry';
|
|
133
|
+
statusPurpose: BitstringStatusPurpose | BitstringStatusPurpose[];
|
|
134
|
+
statusListIndex: string;
|
|
135
|
+
statusListCredential: string;
|
|
136
|
+
bitsPerStatus?: number;
|
|
137
|
+
statusMessage?: Array<BitstringStatus>;
|
|
138
|
+
statusReference?: string | string[];
|
|
139
|
+
}
|
|
101
140
|
interface StatusList2021ToVerifiableCredentialArgs {
|
|
102
141
|
issuer: string | IIssuer;
|
|
103
142
|
id: string;
|
|
@@ -116,22 +155,26 @@ interface CreateStatusListArgs {
|
|
|
116
155
|
length?: number;
|
|
117
156
|
statusList2021?: StatusList2021Args;
|
|
118
157
|
oauthStatusList?: OAuthStatusListArgs;
|
|
158
|
+
bitstringStatusList?: BitstringStatusListArgs;
|
|
119
159
|
}
|
|
120
160
|
interface UpdateStatusListIndexArgs {
|
|
121
161
|
statusListCredential: StatusListCredential;
|
|
122
162
|
statusListIndex: number | string;
|
|
123
|
-
value: number | Status2021 | StatusOAuth;
|
|
163
|
+
value: number | Status2021 | StatusOAuth | BitstringStatus;
|
|
164
|
+
bitsPerStatus?: number;
|
|
124
165
|
keyRef?: string;
|
|
125
166
|
expiresAt?: Date;
|
|
126
167
|
}
|
|
127
168
|
interface CheckStatusIndexArgs {
|
|
128
169
|
statusListCredential: StatusListCredential;
|
|
129
170
|
statusListIndex: string | number;
|
|
171
|
+
bitsPerStatus?: number;
|
|
130
172
|
}
|
|
131
173
|
interface ToStatusListDetailsArgs {
|
|
132
174
|
statusListPayload: StatusListCredential;
|
|
133
175
|
correlationId?: string;
|
|
134
176
|
driverType?: StatusListDriverType;
|
|
177
|
+
bitsPerStatus?: number;
|
|
135
178
|
}
|
|
136
179
|
/**
|
|
137
180
|
* The interface definition for a plugin that can add statuslist info to a credential
|
|
@@ -254,22 +297,29 @@ declare function simpleCheckStatusFromStatusListUrl(args: {
|
|
|
254
297
|
type?: StatusListType | 'StatusList2021Entry';
|
|
255
298
|
id?: string;
|
|
256
299
|
statusListIndex: string;
|
|
257
|
-
}): Promise<number | Status2021 | StatusOAuth>;
|
|
300
|
+
}): Promise<number | Status2021 | StatusOAuth | BitstringStatus>;
|
|
258
301
|
declare function checkStatusIndexFromStatusListCredential(args: {
|
|
259
302
|
statusListCredential: StatusListCredential;
|
|
260
|
-
statusPurpose?: StatusPurpose2021;
|
|
261
|
-
type?: StatusListType | 'StatusList2021Entry';
|
|
303
|
+
statusPurpose?: StatusPurpose2021 | string | string[];
|
|
304
|
+
type?: StatusListType | 'StatusList2021Entry' | 'BitstringStatusListEntry';
|
|
262
305
|
id?: string;
|
|
263
306
|
statusListIndex: string | number;
|
|
264
|
-
|
|
307
|
+
bitsPerStatus?: number;
|
|
308
|
+
}): Promise<number | Status2021 | StatusOAuth | BitstringStatus>;
|
|
265
309
|
declare function createNewStatusList(args: CreateNewStatusListFuncArgs, context: IAgentContext<(ICredentialPlugin | any) & IIdentifierResolution>): Promise<StatusListResult>;
|
|
266
310
|
declare function updateStatusIndexFromStatusListCredential(args: UpdateStatusListIndexArgs, context: IAgentContext<ICredentialPlugin & IIdentifierResolution>): Promise<StatusListResult>;
|
|
267
|
-
declare function statusListCredentialToDetails(
|
|
311
|
+
declare function statusListCredentialToDetails({ correlationId, driverType, statusListCredential, bitsPerStatus, }: {
|
|
268
312
|
statusListCredential: StatusListCredential;
|
|
269
313
|
correlationId?: string;
|
|
270
314
|
driverType?: StatusListDriverType;
|
|
271
|
-
|
|
315
|
+
bitsPerStatus?: number;
|
|
316
|
+
}): Promise<StatusListResult & Partial<IAddStatusListArgs>>;
|
|
317
|
+
declare function createCredentialStatusFromStatusList(args: {
|
|
318
|
+
statusList: StatusListEntity;
|
|
319
|
+
statusListEntry: IStatusListEntryEntity | IBitstringStatusListEntryEntity;
|
|
320
|
+
statusListIndex: number;
|
|
321
|
+
}): Promise<StatusList2021EntryCredentialStatus | StatusListOAuthEntryCredentialStatus | BitstringStatusListEntryCredentialStatus>;
|
|
272
322
|
declare function updateStatusListIndexFromEncodedList(args: UpdateStatusListFromEncodedListArgs, context: IAgentContext<ICredentialPlugin & IIdentifierResolution>): Promise<StatusListResult>;
|
|
273
323
|
declare function statusList2021ToVerifiableCredential(args: StatusList2021ToVerifiableCredentialArgs, context: IAgentContext<ICredentialPlugin & IIdentifierResolution>): Promise<StatusListCredential>;
|
|
274
324
|
|
|
275
|
-
export { type BaseCreateNewStatusListArgs, type CheckStatusIndexArgs, type CreateNewStatusListArgs, type CreateNewStatusListFuncArgs, type CreateStatusListArgs, type CredentialWithStatusSupport, type GetStatusListArgs, type IAddStatusToCredentialArgs, type IAddStatusToSdJwtCredentialArgs, type IIssueCredentialStatusOpts, type IRequiredContext, type IRequiredPlugins, type IStatusListPlugin, type OAuthStatusListArgs, type SignedStatusListData, Status2021, type StatusList2021Args, type StatusList2021EntryCredentialStatus, type StatusList2021ToVerifiableCredentialArgs, type StatusListOAuthEntryCredentialStatus, type StatusListResult, StatusOAuth, type ToStatusListDetailsArgs, type UpdateOAuthStatusListArgs, type UpdateStatusList2021Args, type UpdateStatusListFromEncodedListArgs, type UpdateStatusListFromStatusListCredentialArgs, type UpdateStatusListIndexArgs, checkStatusForCredential, checkStatusIndexFromStatusListCredential, createNewStatusList, fetchStatusListCredential, simpleCheckStatusFromStatusListUrl, statusList2021ToVerifiableCredential, statusListCredentialToDetails, statusPluginStatusFunction, updateStatusIndexFromStatusListCredential, updateStatusListIndexFromEncodedList, vcLibCheckStatusFunction };
|
|
325
|
+
export { type BaseCreateNewStatusListArgs, type BitstringStatus, type BitstringStatusListArgs, type BitstringStatusListEntryCredentialStatus, type CheckStatusIndexArgs, type CreateNewStatusListArgs, type CreateNewStatusListFuncArgs, type CreateStatusListArgs, type CredentialWithStatusSupport, type GetStatusListArgs, type IAddStatusToCredentialArgs, type IAddStatusToSdJwtCredentialArgs, type IIssueCredentialStatusOpts, type IRequiredContext, type IRequiredPlugins, type IStatusListPlugin, type OAuthStatusListArgs, type SignedStatusListData, Status2021, type StatusList2021Args, type StatusList2021EntryCredentialStatus, type StatusList2021ToVerifiableCredentialArgs, type StatusListOAuthEntryCredentialStatus, type StatusListResult, StatusOAuth, type ToStatusListDetailsArgs, type UpdateBitstringStatusListArgs, type UpdateOAuthStatusListArgs, type UpdateStatusList2021Args, type UpdateStatusListFromEncodedListArgs, type UpdateStatusListFromStatusListCredentialArgs, type UpdateStatusListIndexArgs, checkStatusForCredential, checkStatusIndexFromStatusListCredential, createCredentialStatusFromStatusList, createNewStatusList, fetchStatusListCredential, simpleCheckStatusFromStatusListUrl, statusList2021ToVerifiableCredential, statusListCredentialToDetails, statusPluginStatusFunction, updateStatusIndexFromStatusListCredential, updateStatusListIndexFromEncodedList, vcLibCheckStatusFunction };
|