@cheqd/sdk 5.3.2-develop.2 → 5.3.3-develop.1

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/README.md +310 -0
  2. package/build/cjs/index.d.ts +92 -1
  3. package/build/cjs/index.d.ts.map +1 -1
  4. package/build/cjs/index.js +75 -2
  5. package/build/cjs/index.js.map +1 -1
  6. package/build/cjs/modules/_.d.ts +61 -0
  7. package/build/cjs/modules/_.d.ts.map +1 -1
  8. package/build/cjs/modules/_.js +50 -0
  9. package/build/cjs/modules/_.js.map +1 -1
  10. package/build/cjs/modules/did.d.ts +278 -0
  11. package/build/cjs/modules/did.d.ts.map +1 -1
  12. package/build/cjs/modules/did.js +242 -0
  13. package/build/cjs/modules/did.js.map +1 -1
  14. package/build/cjs/modules/feeabstraction.d.ts +297 -2
  15. package/build/cjs/modules/feeabstraction.d.ts.map +1 -1
  16. package/build/cjs/modules/feeabstraction.js +235 -4
  17. package/build/cjs/modules/feeabstraction.js.map +1 -1
  18. package/build/cjs/modules/feemarket.d.ts +154 -21
  19. package/build/cjs/modules/feemarket.d.ts.map +1 -1
  20. package/build/cjs/modules/feemarket.js +133 -22
  21. package/build/cjs/modules/feemarket.js.map +1 -1
  22. package/build/cjs/modules/resource.d.ts +143 -0
  23. package/build/cjs/modules/resource.d.ts.map +1 -1
  24. package/build/cjs/modules/resource.js +131 -0
  25. package/build/cjs/modules/resource.js.map +1 -1
  26. package/build/cjs/querier.d.ts +50 -0
  27. package/build/cjs/querier.d.ts.map +1 -1
  28. package/build/cjs/querier.js +50 -0
  29. package/build/cjs/querier.js.map +1 -1
  30. package/build/cjs/registry.d.ts +14 -0
  31. package/build/cjs/registry.d.ts.map +1 -1
  32. package/build/cjs/registry.js +14 -0
  33. package/build/cjs/registry.js.map +1 -1
  34. package/build/cjs/signer.d.ts +172 -1
  35. package/build/cjs/signer.d.ts.map +1 -1
  36. package/build/cjs/signer.js +172 -1
  37. package/build/cjs/signer.js.map +1 -1
  38. package/build/cjs/types.d.ts +91 -0
  39. package/build/cjs/types.d.ts.map +1 -1
  40. package/build/cjs/types.js +17 -0
  41. package/build/cjs/types.js.map +1 -1
  42. package/build/cjs/utils.d.ts +188 -0
  43. package/build/cjs/utils.d.ts.map +1 -1
  44. package/build/cjs/utils.js +195 -0
  45. package/build/cjs/utils.js.map +1 -1
  46. package/build/esm/index.d.ts +92 -1
  47. package/build/esm/index.d.ts.map +1 -1
  48. package/build/esm/index.js +74 -1
  49. package/build/esm/index.js.map +1 -1
  50. package/build/esm/modules/_.d.ts +42 -0
  51. package/build/esm/modules/_.d.ts.map +1 -1
  52. package/build/esm/modules/_.js +32 -0
  53. package/build/esm/modules/_.js.map +1 -1
  54. package/build/esm/modules/did.d.ts +274 -0
  55. package/build/esm/modules/did.d.ts.map +1 -1
  56. package/build/esm/modules/did.js +242 -0
  57. package/build/esm/modules/did.js.map +1 -1
  58. package/build/esm/modules/feeabstraction.d.ts +277 -2
  59. package/build/esm/modules/feeabstraction.d.ts.map +1 -1
  60. package/build/esm/modules/feeabstraction.js +221 -2
  61. package/build/esm/modules/feeabstraction.js.map +1 -1
  62. package/build/esm/modules/feemarket.d.ts +152 -21
  63. package/build/esm/modules/feemarket.d.ts.map +1 -1
  64. package/build/esm/modules/feemarket.js +131 -21
  65. package/build/esm/modules/feemarket.js.map +1 -1
  66. package/build/esm/modules/resource.d.ts +142 -0
  67. package/build/esm/modules/resource.d.ts.map +1 -1
  68. package/build/esm/modules/resource.js +130 -0
  69. package/build/esm/modules/resource.js.map +1 -1
  70. package/build/esm/querier.d.ts +50 -0
  71. package/build/esm/querier.d.ts.map +1 -1
  72. package/build/esm/querier.js +50 -0
  73. package/build/esm/querier.js.map +1 -1
  74. package/build/esm/registry.d.ts +14 -0
  75. package/build/esm/registry.d.ts.map +1 -1
  76. package/build/esm/registry.js +14 -0
  77. package/build/esm/registry.js.map +1 -1
  78. package/build/esm/signer.d.ts +122 -0
  79. package/build/esm/signer.d.ts.map +1 -1
  80. package/build/esm/signer.js +122 -0
  81. package/build/esm/signer.js.map +1 -1
  82. package/build/esm/types.d.ts +92 -0
  83. package/build/esm/types.d.ts.map +1 -1
  84. package/build/esm/types.js +17 -0
  85. package/build/esm/types.js.map +1 -1
  86. package/build/esm/utils.d.ts +178 -0
  87. package/build/esm/utils.d.ts.map +1 -1
  88. package/build/esm/utils.js +171 -0
  89. package/build/esm/utils.js.map +1 -1
  90. package/build/types/index.d.ts +92 -1
  91. package/build/types/index.d.ts.map +1 -1
  92. package/build/types/modules/_.d.ts +42 -0
  93. package/build/types/modules/_.d.ts.map +1 -1
  94. package/build/types/modules/did.d.ts +274 -0
  95. package/build/types/modules/did.d.ts.map +1 -1
  96. package/build/types/modules/feeabstraction.d.ts +277 -2
  97. package/build/types/modules/feeabstraction.d.ts.map +1 -1
  98. package/build/types/modules/feemarket.d.ts +152 -21
  99. package/build/types/modules/feemarket.d.ts.map +1 -1
  100. package/build/types/modules/resource.d.ts +142 -0
  101. package/build/types/modules/resource.d.ts.map +1 -1
  102. package/build/types/querier.d.ts +50 -0
  103. package/build/types/querier.d.ts.map +1 -1
  104. package/build/types/registry.d.ts +14 -0
  105. package/build/types/registry.d.ts.map +1 -1
  106. package/build/types/signer.d.ts +122 -0
  107. package/build/types/signer.d.ts.map +1 -1
  108. package/build/types/types.d.ts +92 -0
  109. package/build/types/types.d.ts.map +1 -1
  110. package/build/types/utils.d.ts +178 -0
  111. package/build/types/utils.d.ts.map +1 -1
  112. package/package.json +1 -1
@@ -6,40 +6,218 @@ import { Service as ProtoService, DidDoc } from '@cheqd/ts-proto/cheqd/did/v2/in
6
6
  import { MsgCreateResourcePayload } from '@cheqd/ts-proto/cheqd/resource/v2/index.js';
7
7
  import { Coin } from 'cosmjs-types/cosmos/base/v1beta1/coin';
8
8
  import { BackoffOptions } from 'exponential-backoff';
9
+ /**
10
+ * Represents an importable Ed25519 key with hexadecimal encoding.
11
+ * This type ensures type safety for Ed25519 key operations.
12
+ */
9
13
  export type TImportableEd25519Key = {
14
+ /** Public key in hexadecimal format */
10
15
  publicKeyHex: string;
16
+ /** Private key in hexadecimal format */
11
17
  privateKeyHex: string;
18
+ /** Key identifier */
12
19
  kid: string;
20
+ /** Key type, must be 'Ed25519' */
13
21
  type: 'Ed25519';
14
22
  };
23
+ /**
24
+ * Utility object for validating TImportableEd25519Key objects.
25
+ * Provides type guard functionality to ensure key structure integrity.
26
+ */
15
27
  export declare const TImportableEd25519Key: {
28
+ /**
29
+ * Type guard to validate if an object is a valid TImportableEd25519Key.
30
+ *
31
+ * @param key - Object to validate
32
+ * @returns True if the object is a valid TImportableEd25519Key
33
+ */
16
34
  isValid(key: any): key is TImportableEd25519Key;
17
35
  };
36
+ /**
37
+ * Compares two arrays of key-value pairs for equality.
38
+ *
39
+ * @param kv1 - First array of key-value pairs
40
+ * @param kv2 - Second array of key-value pairs
41
+ * @returns True if both arrays contain identical key-value pairs in the same order
42
+ */
18
43
  export declare function isEqualKeyValuePair(kv1: IKeyValuePair[], kv2: IKeyValuePair[]): boolean;
44
+ /**
45
+ * Extended English mnemonic class with additional validation patterns.
46
+ * Provides regex pattern matching for mnemonic phrase validation.
47
+ */
19
48
  export declare class EnglishMnemonic extends _ {
49
+ /** Regular expression pattern for validating English mnemonic phrases */
20
50
  static readonly _mnemonicMatcher: RegExp;
21
51
  }
52
+ /**
53
+ * Creates signing inputs from an importable Ed25519 key by matching it with verification methods.
54
+ * Supports multiple verification method types and key formats.
55
+ *
56
+ * @param key - The Ed25519 key to create signing inputs from
57
+ * @param verificationMethod - Array of verification methods to match against
58
+ * @returns Signing inputs containing verification method ID and private key
59
+ * @throws Error if key validation fails or no matching verification method is found
60
+ */
22
61
  export declare function createSignInputsFromImportableEd25519Key(key: TImportableEd25519Key, verificationMethod: VerificationMethod[]): ISignInputs;
62
+ /**
63
+ * Creates a raw Ed25519 key pair using the StableLib library.
64
+ *
65
+ * @param seed - Optional seed string for deterministic key generation
66
+ * @returns Raw KeyPair object with publicKey and secretKey as Uint8Arrays
67
+ */
23
68
  export declare function createKeyPairRaw(seed?: string): KeyPair;
69
+ /**
70
+ * Creates an Ed25519 key pair with Base64-encoded keys.
71
+ *
72
+ * @param seed - Optional seed string for deterministic key generation
73
+ * @returns Key pair with Base64-encoded public and private keys
74
+ */
24
75
  export declare function createKeyPairBase64(seed?: string): IKeyPair;
76
+ /**
77
+ * Creates an Ed25519 key pair with hexadecimal-encoded keys.
78
+ *
79
+ * @param seed - Optional seed string for deterministic key generation
80
+ * @returns Key pair with hexadecimal-encoded public and private keys
81
+ */
25
82
  export declare function createKeyPairHex(seed?: string): IKeyPair;
83
+ /**
84
+ * Creates verification keys structure with DID URLs and key identifiers.
85
+ * Supports multiple algorithm types and network configurations.
86
+ *
87
+ * @param publicKey - Public key in base64 or hex format
88
+ * @param algo - Algorithm for method-specific ID generation
89
+ * @param keyFragment - Key fragment for the verification key identifier
90
+ * @param network - Cheqd network (defaults to Testnet)
91
+ * @param methodSpecificId - Optional pre-computed method-specific ID
92
+ * @param didUrl - Optional pre-computed DID URL
93
+ * @returns Verification keys structure with all identifiers
94
+ * @throws Error if public key format is invalid
95
+ */
26
96
  export declare function createVerificationKeys(publicKey: string, algo: MethodSpecificIdAlgo, keyFragment: TVerificationKey<TVerificationKeyPrefix, number>, network?: CheqdNetwork, methodSpecificId?: TMethodSpecificId, didUrl?: string): IVerificationKeys;
97
+ /**
98
+ * Creates DID verification methods from verification method types and keys.
99
+ * Supports Ed25519 keys in multiple formats (multibase, base58, JWK).
100
+ *
101
+ * @param verificationMethodTypes - Array of verification method types to create
102
+ * @param verificationKeys - Array of verification keys corresponding to each type
103
+ * @returns Array of formatted verification methods for DID documents
104
+ */
27
105
  export declare function createDidVerificationMethod(verificationMethodTypes: VerificationMethods[], verificationKeys: IVerificationKeys[]): VerificationMethod[];
106
+ /**
107
+ * Creates a complete DID document payload with verification methods and controllers.
108
+ *
109
+ * @param verificationMethods - Array of verification methods for the DID
110
+ * @param verificationKeys - Array of verification keys for authentication
111
+ * @param controller - Optional array of controller DIDs (defaults to self-controlled)
112
+ * @returns Complete DID document with all required fields
113
+ * @throws Error if verification methods or keys are missing
114
+ */
28
115
  export declare function createDidPayload(verificationMethods: VerificationMethod[], verificationKeys: IVerificationKeys[], controller?: string[]): DIDDocument;
116
+ /**
117
+ * Validates a DID document against the Cheqd specification and converts to protobuf format.
118
+ * Ensures all required fields are present and verification methods are supported.
119
+ *
120
+ * @param didDocument - DID document to validate
121
+ * @returns Validation result with protobuf conversion or error details
122
+ */
29
123
  export declare function validateSpecCompliantPayload(didDocument: DIDDocument): SpecValidationResult;
124
+ /**
125
+ * Creates a Cosmos wallet from a seed phrase or private key.
126
+ * Supports both HD wallets from mnemonics and direct key wallets.
127
+ *
128
+ * @param cosmosPayerSeed - Mnemonic phrase or private key hex string
129
+ * @returns Promise resolving to either HD wallet or direct key wallet
130
+ */
30
131
  export declare function createCosmosPayerWallet(cosmosPayerSeed: string): Promise<DirectSecp256k1HdWallet | DirectSecp256k1Wallet>;
132
+ /**
133
+ * Converts a raw Ed25519 public key to multibase format with proper multicodec header.
134
+ *
135
+ * @param key - Raw Ed25519 public key as Uint8Array
136
+ * @returns Multibase-encoded string with Ed25519 multicodec prefix
137
+ */
31
138
  export declare function toMultibaseRaw(key: Uint8Array): string;
139
+ /**
140
+ * Creates a MsgCreateDidDoc payload ready for signing.
141
+ * Validates the DID document and converts it to protobuf format.
142
+ *
143
+ * @param didPayload - DID document to create message payload from
144
+ * @param versionId - Version identifier for the DID document
145
+ * @returns Encoded message payload bytes ready for signing
146
+ */
32
147
  export declare function createMsgCreateDidDocPayloadToSign(didPayload: DIDDocument, versionId: string): Promise<Uint8Array<ArrayBufferLike>>;
148
+ /** Alias for createMsgCreateDidDocPayloadToSign - used for DID document updates */
33
149
  export declare const createMsgUpdateDidDocPayloadToSign: typeof createMsgCreateDidDocPayloadToSign;
150
+ /**
151
+ * Creates a MsgDeactivateDidDoc payload ready for signing.
152
+ *
153
+ * @param didPayload - DID document containing the ID to deactivate
154
+ * @param versionId - Optional version identifier for the DID document
155
+ * @returns Encoded message payload bytes ready for signing
156
+ */
34
157
  export declare function createMsgDeactivateDidDocPayloadToSign(didPayload: DIDDocument, versionId?: string): Uint8Array<ArrayBufferLike>;
158
+ /**
159
+ * Creates a resource payload ready for signing.
160
+ *
161
+ * @param payload - Resource payload to encode
162
+ * @returns Encoded resource payload bytes ready for signing
163
+ */
35
164
  export declare function createMsgResourcePayloadToSign(payload: Partial<MsgCreateResourcePayload> | MsgCreateResourcePayload): Uint8Array<ArrayBufferLike>;
165
+ /**
166
+ * Converts a public key to a Cosmos account address.
167
+ *
168
+ * @param publicKeyHex - Public key in hexadecimal format
169
+ * @returns Bech32-encoded Cosmos account address with 'cheqd' prefix
170
+ */
36
171
  export declare function getCosmosAccount(publicKeyHex: string): string;
172
+ /**
173
+ * Checks the balance of all coins for a given address on the blockchain.
174
+ *
175
+ * @param address - Bech32-encoded account address to check balance for
176
+ * @param rpcAddress - RPC endpoint URL of the blockchain node
177
+ * @returns Promise resolving to array of coin balances
178
+ */
37
179
  export declare function checkBalance(address: string, rpcAddress: string): Promise<readonly Coin[]>;
180
+ /**
181
+ * Checks if a given input is valid JSON.
182
+ *
183
+ * @param input - Input to validate as JSON
184
+ * @returns True if the input is a valid JSON string
185
+ */
38
186
  export declare function isJSON(input: any): boolean;
187
+ /** Default configuration options for exponential backoff retry logic */
39
188
  export declare const DefaultBackoffOptions: BackoffOptions;
40
189
  export declare function retry<T>(fn: () => Promise<T>, options?: BackoffOptions): Promise<T | undefined>;
190
+ /**
191
+ * Normalizes the authentication property of a DID document to an array of strings.
192
+ * Extracts authentication method identifiers from mixed string/object format.
193
+ *
194
+ * @param didDocument - DID document to normalize authentication for
195
+ * @returns Array of authentication method identifiers
196
+ * @throws Error if authentication section is missing
197
+ */
41
198
  export declare function normalizeAuthentication(didDocument: DIDDocument): string[];
199
+ /**
200
+ * Normalizes the controller property of a DID document to an array of strings.
201
+ * Defaults to self-controlled if no controller is specified.
202
+ *
203
+ * @param didDocument - DID document to normalize controller for
204
+ * @returns Array of controller DID identifiers
205
+ */
42
206
  export declare function normalizeController(didDocument: DIDDocument): string[];
207
+ /**
208
+ * Normalizes DID document services to protobuf format.
209
+ * Converts service endpoints to arrays and includes optional properties.
210
+ *
211
+ * @param didDocument - DID document containing services to normalize
212
+ * @returns Array of protobuf-formatted services or undefined if no services
213
+ */
43
214
  export declare function normalizeService(didDocument: DIDDocument): ProtoService[] | undefined;
215
+ /**
216
+ * Converts protobuf services back to standard DID document service format.
217
+ * Handles special context requirements for LinkedDomains services.
218
+ *
219
+ * @param didDocument - Protobuf DID document containing services to denormalize
220
+ * @returns Array of standard DID document services
221
+ */
44
222
  export declare function denormalizeService(didDocument: DidDoc): Service[];
45
223
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../esm/src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../esm/src/utils.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,17 @@ import { MsgCreateResourcePayload } from '@cheqd/ts-proto/cheqd/resource/v2/inde
14
14
  import { toBech32 } from '@cosmjs/encoding';
15
15
  import { StargateClient } from '@cosmjs/stargate';
16
16
  import { backOff } from 'exponential-backoff';
17
+ /**
18
+ * Utility object for validating TImportableEd25519Key objects.
19
+ * Provides type guard functionality to ensure key structure integrity.
20
+ */
17
21
  export const TImportableEd25519Key = {
22
+ /**
23
+ * Type guard to validate if an object is a valid TImportableEd25519Key.
24
+ *
25
+ * @param key - Object to validate
26
+ * @returns True if the object is a valid TImportableEd25519Key
27
+ */
18
28
  isValid(key) {
19
29
  return (typeof key === 'object' &&
20
30
  key !== null &&
@@ -26,13 +36,35 @@ export const TImportableEd25519Key = {
26
36
  key.type === 'Ed25519');
27
37
  },
28
38
  };
39
+ /** Multicodec header for Ed25519 public keys */
29
40
  const MULTICODEC_ED25519_HEADER = new Uint8Array([0xed, 0x01]);
41
+ /**
42
+ * Compares two arrays of key-value pairs for equality.
43
+ *
44
+ * @param kv1 - First array of key-value pairs
45
+ * @param kv2 - Second array of key-value pairs
46
+ * @returns True if both arrays contain identical key-value pairs in the same order
47
+ */
30
48
  export function isEqualKeyValuePair(kv1, kv2) {
31
49
  return kv1.every((item, index) => item.key === kv2[index].key && item.value === kv2[index].value);
32
50
  }
51
+ /**
52
+ * Extended English mnemonic class with additional validation patterns.
53
+ * Provides regex pattern matching for mnemonic phrase validation.
54
+ */
33
55
  export class EnglishMnemonic extends _ {
56
+ /** Regular expression pattern for validating English mnemonic phrases */
34
57
  static _mnemonicMatcher = /^[a-z]+( [a-z]+)*$/;
35
58
  }
59
+ /**
60
+ * Creates signing inputs from an importable Ed25519 key by matching it with verification methods.
61
+ * Supports multiple verification method types and key formats.
62
+ *
63
+ * @param key - The Ed25519 key to create signing inputs from
64
+ * @param verificationMethod - Array of verification methods to match against
65
+ * @returns Signing inputs containing verification method ID and private key
66
+ * @throws Error if key validation fails or no matching verification method is found
67
+ */
36
68
  export function createSignInputsFromImportableEd25519Key(key, verificationMethod) {
37
69
  if (!TImportableEd25519Key.isValid(key))
38
70
  throw new Error(`Key validation failed. Expected ${Object.values(TImportableEd25519Key).join(', ')}`);
@@ -72,9 +104,21 @@ export function createSignInputsFromImportableEd25519Key(key, verificationMethod
72
104
  }
73
105
  throw new Error(`No verification method type provided. Expected one of: ${Object.values(VerificationMethods).join(', ')}`);
74
106
  }
107
+ /**
108
+ * Creates a raw Ed25519 key pair using the StableLib library.
109
+ *
110
+ * @param seed - Optional seed string for deterministic key generation
111
+ * @returns Raw KeyPair object with publicKey and secretKey as Uint8Arrays
112
+ */
75
113
  export function createKeyPairRaw(seed) {
76
114
  return seed ? generateKeyPairFromSeed(fromString(seed)) : generateKeyPair();
77
115
  }
116
+ /**
117
+ * Creates an Ed25519 key pair with Base64-encoded keys.
118
+ *
119
+ * @param seed - Optional seed string for deterministic key generation
120
+ * @returns Key pair with Base64-encoded public and private keys
121
+ */
78
122
  export function createKeyPairBase64(seed) {
79
123
  const keyPair = seed ? generateKeyPairFromSeed(fromString(seed)) : generateKeyPair();
80
124
  return {
@@ -82,6 +126,12 @@ export function createKeyPairBase64(seed) {
82
126
  privateKey: toString(keyPair.secretKey, 'base64'),
83
127
  };
84
128
  }
129
+ /**
130
+ * Creates an Ed25519 key pair with hexadecimal-encoded keys.
131
+ *
132
+ * @param seed - Optional seed string for deterministic key generation
133
+ * @returns Key pair with hexadecimal-encoded public and private keys
134
+ */
85
135
  export function createKeyPairHex(seed) {
86
136
  const keyPair = createKeyPairRaw(seed);
87
137
  return {
@@ -89,6 +139,19 @@ export function createKeyPairHex(seed) {
89
139
  privateKey: toString(keyPair.secretKey, 'hex'),
90
140
  };
91
141
  }
142
+ /**
143
+ * Creates verification keys structure with DID URLs and key identifiers.
144
+ * Supports multiple algorithm types and network configurations.
145
+ *
146
+ * @param publicKey - Public key in base64 or hex format
147
+ * @param algo - Algorithm for method-specific ID generation
148
+ * @param keyFragment - Key fragment for the verification key identifier
149
+ * @param network - Cheqd network (defaults to Testnet)
150
+ * @param methodSpecificId - Optional pre-computed method-specific ID
151
+ * @param didUrl - Optional pre-computed DID URL
152
+ * @returns Verification keys structure with all identifiers
153
+ * @throws Error if public key format is invalid
154
+ */
92
155
  export function createVerificationKeys(publicKey, algo, keyFragment, network = CheqdNetwork.Testnet, methodSpecificId, didUrl) {
93
156
  if (isHex(publicKey)) {
94
157
  publicKey = toString(fromString(publicKey, 'hex'), 'base64');
@@ -119,6 +182,14 @@ export function createVerificationKeys(publicKey, algo, keyFragment, network = C
119
182
  };
120
183
  }
121
184
  }
185
+ /**
186
+ * Creates DID verification methods from verification method types and keys.
187
+ * Supports Ed25519 keys in multiple formats (multibase, base58, JWK).
188
+ *
189
+ * @param verificationMethodTypes - Array of verification method types to create
190
+ * @param verificationKeys - Array of verification keys corresponding to each type
191
+ * @returns Array of formatted verification methods for DID documents
192
+ */
122
193
  export function createDidVerificationMethod(verificationMethodTypes, verificationKeys) {
123
194
  return (verificationMethodTypes.map((type, _) => {
124
195
  switch (type) {
@@ -152,6 +223,15 @@ export function createDidVerificationMethod(verificationMethodTypes, verificatio
152
223
  }
153
224
  }) ?? []);
154
225
  }
226
+ /**
227
+ * Creates a complete DID document payload with verification methods and controllers.
228
+ *
229
+ * @param verificationMethods - Array of verification methods for the DID
230
+ * @param verificationKeys - Array of verification keys for authentication
231
+ * @param controller - Optional array of controller DIDs (defaults to self-controlled)
232
+ * @returns Complete DID document with all required fields
233
+ * @throws Error if verification methods or keys are missing
234
+ */
155
235
  export function createDidPayload(verificationMethods, verificationKeys, controller = []) {
156
236
  if (!verificationMethods || verificationMethods.length === 0)
157
237
  throw new Error('No verification methods provided');
@@ -165,6 +245,13 @@ export function createDidPayload(verificationMethods, verificationKeys, controll
165
245
  authentication: verificationKeys.map((key) => key.keyId),
166
246
  };
167
247
  }
248
+ /**
249
+ * Validates a DID document against the Cheqd specification and converts to protobuf format.
250
+ * Ensures all required fields are present and verification methods are supported.
251
+ *
252
+ * @param didDocument - DID document to validate
253
+ * @returns Validation result with protobuf conversion or error details
254
+ */
168
255
  export function validateSpecCompliantPayload(didDocument) {
169
256
  // id is required, validated on both compile and runtime
170
257
  if (!didDocument?.id)
@@ -212,17 +299,38 @@ export function validateSpecCompliantPayload(didDocument) {
212
299
  const protoService = normalizeService(didDocument);
213
300
  return { valid: true, protobufVerificationMethod: protoVerificationMethod, protobufService: protoService };
214
301
  }
302
+ /**
303
+ * Creates a Cosmos wallet from a seed phrase or private key.
304
+ * Supports both HD wallets from mnemonics and direct key wallets.
305
+ *
306
+ * @param cosmosPayerSeed - Mnemonic phrase or private key hex string
307
+ * @returns Promise resolving to either HD wallet or direct key wallet
308
+ */
215
309
  export function createCosmosPayerWallet(cosmosPayerSeed) {
216
310
  return EnglishMnemonic._mnemonicMatcher.test(cosmosPayerSeed)
217
311
  ? DirectSecp256k1HdWallet.fromMnemonic(cosmosPayerSeed, { prefix: 'cheqd' })
218
312
  : DirectSecp256k1Wallet.fromKey(fromString(cosmosPayerSeed.replace(/^0x/, ''), 'hex'), 'cheqd');
219
313
  }
314
+ /**
315
+ * Converts a raw Ed25519 public key to multibase format with proper multicodec header.
316
+ *
317
+ * @param key - Raw Ed25519 public key as Uint8Array
318
+ * @returns Multibase-encoded string with Ed25519 multicodec prefix
319
+ */
220
320
  export function toMultibaseRaw(key) {
221
321
  const multibase = new Uint8Array(MULTICODEC_ED25519_HEADER.length + key.length);
222
322
  multibase.set(MULTICODEC_ED25519_HEADER);
223
323
  multibase.set(key, MULTICODEC_ED25519_HEADER.length);
224
324
  return bases['base58btc'].encode(multibase);
225
325
  }
326
+ /**
327
+ * Creates a MsgCreateDidDoc payload ready for signing.
328
+ * Validates the DID document and converts it to protobuf format.
329
+ *
330
+ * @param didPayload - DID document to create message payload from
331
+ * @param versionId - Version identifier for the DID document
332
+ * @returns Encoded message payload bytes ready for signing
333
+ */
226
334
  export async function createMsgCreateDidDocPayloadToSign(didPayload, versionId) {
227
335
  const { protobufVerificationMethod, protobufService } = await DIDModule.validateSpecCompliantPayload(didPayload);
228
336
  return MsgCreateDidDocPayload.encode(MsgCreateDidDocPayload.fromPartial({
@@ -240,24 +348,57 @@ export async function createMsgCreateDidDocPayloadToSign(didPayload, versionId)
240
348
  versionId,
241
349
  })).finish();
242
350
  }
351
+ /** Alias for createMsgCreateDidDocPayloadToSign - used for DID document updates */
243
352
  export const createMsgUpdateDidDocPayloadToSign = createMsgCreateDidDocPayloadToSign;
353
+ /**
354
+ * Creates a MsgDeactivateDidDoc payload ready for signing.
355
+ *
356
+ * @param didPayload - DID document containing the ID to deactivate
357
+ * @param versionId - Optional version identifier for the DID document
358
+ * @returns Encoded message payload bytes ready for signing
359
+ */
244
360
  export function createMsgDeactivateDidDocPayloadToSign(didPayload, versionId) {
245
361
  return MsgDeactivateDidDocPayload.encode(MsgDeactivateDidDocPayload.fromPartial({
246
362
  id: didPayload.id,
247
363
  versionId,
248
364
  })).finish();
249
365
  }
366
+ /**
367
+ * Creates a resource payload ready for signing.
368
+ *
369
+ * @param payload - Resource payload to encode
370
+ * @returns Encoded resource payload bytes ready for signing
371
+ */
250
372
  export function createMsgResourcePayloadToSign(payload) {
251
373
  return MsgCreateResourcePayload.encode(MsgCreateResourcePayload.fromPartial(payload)).finish();
252
374
  }
375
+ /**
376
+ * Converts a public key to a Cosmos account address.
377
+ *
378
+ * @param publicKeyHex - Public key in hexadecimal format
379
+ * @returns Bech32-encoded Cosmos account address with 'cheqd' prefix
380
+ */
253
381
  export function getCosmosAccount(publicKeyHex) {
254
382
  const { publicKeyConvert } = pkg;
255
383
  return toBech32('cheqd', rawSecp256k1PubkeyToRawAddress(publicKeyConvert(fromString(publicKeyHex, 'hex'), true)));
256
384
  }
385
+ /**
386
+ * Checks the balance of all coins for a given address on the blockchain.
387
+ *
388
+ * @param address - Bech32-encoded account address to check balance for
389
+ * @param rpcAddress - RPC endpoint URL of the blockchain node
390
+ * @returns Promise resolving to array of coin balances
391
+ */
257
392
  export async function checkBalance(address, rpcAddress) {
258
393
  const client = await StargateClient.connect(rpcAddress);
259
394
  return await client.getAllBalances(address);
260
395
  }
396
+ /**
397
+ * Checks if a given input is valid JSON.
398
+ *
399
+ * @param input - Input to validate as JSON
400
+ * @returns True if the input is a valid JSON string
401
+ */
261
402
  export function isJSON(input) {
262
403
  if (typeof input !== 'string')
263
404
  return false;
@@ -269,6 +410,7 @@ export function isJSON(input) {
269
410
  return false;
270
411
  }
271
412
  }
413
+ /** Default configuration options for exponential backoff retry logic */
272
414
  export const DefaultBackoffOptions = {
273
415
  jitter: 'full',
274
416
  timeMultiple: 1,
@@ -321,6 +463,14 @@ function isHex(str) {
321
463
  return false;
322
464
  }
323
465
  }
466
+ /**
467
+ * Normalizes the authentication property of a DID document to an array of strings.
468
+ * Extracts authentication method identifiers from mixed string/object format.
469
+ *
470
+ * @param didDocument - DID document to normalize authentication for
471
+ * @returns Array of authentication method identifiers
472
+ * @throws Error if authentication section is missing
473
+ */
324
474
  export function normalizeAuthentication(didDocument) {
325
475
  if (!didDocument.authentication)
326
476
  throw new Error('Invalid DID Document: Authentication section is required in DID Document');
@@ -329,11 +479,25 @@ export function normalizeAuthentication(didDocument) {
329
479
  : [didDocument.authentication];
330
480
  return authArray.map((a) => (typeof a === 'string' ? a : a.id));
331
481
  }
482
+ /**
483
+ * Normalizes the controller property of a DID document to an array of strings.
484
+ * Defaults to self-controlled if no controller is specified.
485
+ *
486
+ * @param didDocument - DID document to normalize controller for
487
+ * @returns Array of controller DID identifiers
488
+ */
332
489
  export function normalizeController(didDocument) {
333
490
  if (!didDocument.controller)
334
491
  return [didDocument.id];
335
492
  return Array.isArray(didDocument.controller) ? didDocument.controller : [didDocument.controller];
336
493
  }
494
+ /**
495
+ * Normalizes DID document services to protobuf format.
496
+ * Converts service endpoints to arrays and includes optional properties.
497
+ *
498
+ * @param didDocument - DID document containing services to normalize
499
+ * @returns Array of protobuf-formatted services or undefined if no services
500
+ */
337
501
  export function normalizeService(didDocument) {
338
502
  return didDocument.service?.map((s) => {
339
503
  return ProtoService.fromPartial({
@@ -347,6 +511,13 @@ export function normalizeService(didDocument) {
347
511
  });
348
512
  });
349
513
  }
514
+ /**
515
+ * Converts protobuf services back to standard DID document service format.
516
+ * Handles special context requirements for LinkedDomains services.
517
+ *
518
+ * @param didDocument - Protobuf DID document containing services to denormalize
519
+ * @returns Array of standard DID document services
520
+ */
350
521
  export function denormalizeService(didDocument) {
351
522
  return didDocument.service.map((s) => {
352
523
  if (s.serviceType === ServiceType.LinkedDomains)
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../esm/src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../esm/src/utils.ts"],"names":[],"mappings":"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"}