@xyo-network/account-model 3.0.5 → 3.0.7

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.
@@ -27,10 +27,10 @@ interface AccountInstance {
27
27
  readonly addressBytes: ArrayBuffer;
28
28
  previousHash: Hash | undefined;
29
29
  previousHashBytes: ArrayBuffer | undefined;
30
- readonly private: PrivateKeyInstance;
31
- readonly public: PublicKeyInstance;
32
- sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>;
33
- verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>;
30
+ readonly private?: PrivateKeyInstance;
31
+ readonly public?: PublicKeyInstance;
32
+ sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>;
33
+ verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>;
34
34
  }
35
35
  declare const isAccountInstance: (account: any) => account is AccountInstance;
36
36
  interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Account.ts"],"sourcesContent":["import type { Address, Hash } from '@xylabs/hex'\nimport { isArrayBuffer } from '@xylabs/lodash'\nimport type { PrivateKeyInstance, PublicKeyInstance } from '@xyo-network/key-model'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nexport const ethMessagePrefix = '\\u0019Ethereum Signed Message:\\n'\n\nexport interface PhraseInitializationConfig {\n phrase: string\n}\nexport interface PrivateKeyInitializationConfig {\n privateKey: ArrayBuffer\n}\nexport interface MnemonicInitializationConfig {\n mnemonic: string\n path?: string\n}\nexport interface AccountOptions {\n previousHash?: ArrayBuffer\n}\n\nexport type InitializationConfig = PhraseInitializationConfig | PrivateKeyInitializationConfig | MnemonicInitializationConfig\n\nexport type AccountConfig = InitializationConfig & AccountOptions\n\nexport const isPhraseInitializationConfig = (value: unknown): value is PhraseInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return typeof (value as PhraseInitializationConfig).phrase === 'string'\n }\n return false\n}\n\nexport const isPrivateKeyInitializationConfig = (value: unknown): value is PrivateKeyInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return isArrayBuffer((value as PrivateKeyInitializationConfig).privateKey)\n }\n return false\n}\n\nexport const isMnemonicInitializationConfig = (value: unknown): value is MnemonicInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return (\n typeof (value as MnemonicInitializationConfig).mnemonic === 'string' && typeof ((value as MnemonicInitializationConfig).path ?? '') === 'string'\n )\n }\n return false\n}\n\nexport const isInitializationConfig = (value: unknown): value is InitializationConfig => {\n return isPhraseInitializationConfig(value) || isPrivateKeyInitializationConfig(value) || isMnemonicInitializationConfig(value)\n}\n\nexport interface AccountInstance {\n readonly address: Address\n readonly addressBytes: ArrayBuffer\n previousHash: Hash | undefined\n previousHashBytes: ArrayBuffer | undefined\n readonly private: PrivateKeyInstance\n readonly public: PublicKeyInstance\n sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>\n verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const isAccountInstance = (account: any): account is AccountInstance => {\n return typeof account === 'object' && typeof account['address'] === 'string'\n}\n\nexport interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {\n previousHashStore?: PreviousHashStore\n create(options?: C): Promise<T>\n fromPrivateKey(key: ArrayBuffer | string): Promise<AccountInstance>\n random(): Promise<AccountInstance>\n}\n"],"mappings":";AACA,SAAS,qBAAqB;AAIvB,IAAM,mBAAmB;AAoBzB,IAAM,+BAA+B,CAAC,UAAwD;AACnG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,OAAQ,MAAqC,WAAW;AAAA,EACjE;AACA,SAAO;AACT;AAEO,IAAM,mCAAmC,CAAC,UAA4D;AAC3G,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,cAAe,MAAyC,UAAU;AAAA,EAC3E;AACA,SAAO;AACT;AAEO,IAAM,iCAAiC,CAAC,UAA0D;AACvG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WACE,OAAQ,MAAuC,aAAa,YAAY,QAAS,MAAuC,QAAQ,QAAQ;AAAA,EAE5I;AACA,SAAO;AACT;AAEO,IAAM,yBAAyB,CAAC,UAAkD;AACvF,SAAO,6BAA6B,KAAK,KAAK,iCAAiC,KAAK,KAAK,+BAA+B,KAAK;AAC/H;AAcO,IAAM,oBAAoB,CAAC,YAA6C;AAC7E,SAAO,OAAO,YAAY,YAAY,OAAO,QAAQ,SAAS,MAAM;AACtE;","names":[]}
1
+ {"version":3,"sources":["../../src/Account.ts"],"sourcesContent":["import type { Address, Hash } from '@xylabs/hex'\nimport { isArrayBuffer } from '@xylabs/lodash'\nimport type { PrivateKeyInstance, PublicKeyInstance } from '@xyo-network/key-model'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nexport const ethMessagePrefix = '\\u0019Ethereum Signed Message:\\n'\n\nexport interface PhraseInitializationConfig {\n phrase: string\n}\nexport interface PrivateKeyInitializationConfig {\n privateKey: ArrayBuffer\n}\nexport interface MnemonicInitializationConfig {\n mnemonic: string\n path?: string\n}\nexport interface AccountOptions {\n previousHash?: ArrayBuffer\n}\n\nexport type InitializationConfig = PhraseInitializationConfig | PrivateKeyInitializationConfig | MnemonicInitializationConfig\n\nexport type AccountConfig = InitializationConfig & AccountOptions\n\nexport const isPhraseInitializationConfig = (value: unknown): value is PhraseInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return typeof (value as PhraseInitializationConfig).phrase === 'string'\n }\n return false\n}\n\nexport const isPrivateKeyInitializationConfig = (value: unknown): value is PrivateKeyInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return isArrayBuffer((value as PrivateKeyInitializationConfig).privateKey)\n }\n return false\n}\n\nexport const isMnemonicInitializationConfig = (value: unknown): value is MnemonicInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return (\n typeof (value as MnemonicInitializationConfig).mnemonic === 'string' && typeof ((value as MnemonicInitializationConfig).path ?? '') === 'string'\n )\n }\n return false\n}\n\nexport const isInitializationConfig = (value: unknown): value is InitializationConfig => {\n return isPhraseInitializationConfig(value) || isPrivateKeyInitializationConfig(value) || isMnemonicInitializationConfig(value)\n}\n\nexport interface AccountInstance {\n readonly address: Address\n readonly addressBytes: ArrayBuffer\n previousHash: Hash | undefined\n previousHashBytes: ArrayBuffer | undefined\n readonly private?: PrivateKeyInstance\n readonly public?: PublicKeyInstance\n sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>\n verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const isAccountInstance = (account: any): account is AccountInstance => {\n return typeof account === 'object' && typeof account['address'] === 'string'\n}\n\nexport interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {\n previousHashStore?: PreviousHashStore\n create(options?: C): Promise<T>\n fromPrivateKey(key: ArrayBuffer | string): Promise<AccountInstance>\n random(): Promise<AccountInstance>\n}\n"],"mappings":";AACA,SAAS,qBAAqB;AAIvB,IAAM,mBAAmB;AAoBzB,IAAM,+BAA+B,CAAC,UAAwD;AACnG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,OAAQ,MAAqC,WAAW;AAAA,EACjE;AACA,SAAO;AACT;AAEO,IAAM,mCAAmC,CAAC,UAA4D;AAC3G,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,cAAe,MAAyC,UAAU;AAAA,EAC3E;AACA,SAAO;AACT;AAEO,IAAM,iCAAiC,CAAC,UAA0D;AACvG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WACE,OAAQ,MAAuC,aAAa,YAAY,QAAS,MAAuC,QAAQ,QAAQ;AAAA,EAE5I;AACA,SAAO;AACT;AAEO,IAAM,yBAAyB,CAAC,UAAkD;AACvF,SAAO,6BAA6B,KAAK,KAAK,iCAAiC,KAAK,KAAK,+BAA+B,KAAK;AAC/H;AAcO,IAAM,oBAAoB,CAAC,YAA6C;AAC7E,SAAO,OAAO,YAAY,YAAY,OAAO,QAAQ,SAAS,MAAM;AACtE;","names":[]}
@@ -27,10 +27,10 @@ interface AccountInstance {
27
27
  readonly addressBytes: ArrayBuffer;
28
28
  previousHash: Hash | undefined;
29
29
  previousHashBytes: ArrayBuffer | undefined;
30
- readonly private: PrivateKeyInstance;
31
- readonly public: PublicKeyInstance;
32
- sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>;
33
- verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>;
30
+ readonly private?: PrivateKeyInstance;
31
+ readonly public?: PublicKeyInstance;
32
+ sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>;
33
+ verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>;
34
34
  }
35
35
  declare const isAccountInstance: (account: any) => account is AccountInstance;
36
36
  interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Account.ts"],"sourcesContent":["import type { Address, Hash } from '@xylabs/hex'\nimport { isArrayBuffer } from '@xylabs/lodash'\nimport type { PrivateKeyInstance, PublicKeyInstance } from '@xyo-network/key-model'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nexport const ethMessagePrefix = '\\u0019Ethereum Signed Message:\\n'\n\nexport interface PhraseInitializationConfig {\n phrase: string\n}\nexport interface PrivateKeyInitializationConfig {\n privateKey: ArrayBuffer\n}\nexport interface MnemonicInitializationConfig {\n mnemonic: string\n path?: string\n}\nexport interface AccountOptions {\n previousHash?: ArrayBuffer\n}\n\nexport type InitializationConfig = PhraseInitializationConfig | PrivateKeyInitializationConfig | MnemonicInitializationConfig\n\nexport type AccountConfig = InitializationConfig & AccountOptions\n\nexport const isPhraseInitializationConfig = (value: unknown): value is PhraseInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return typeof (value as PhraseInitializationConfig).phrase === 'string'\n }\n return false\n}\n\nexport const isPrivateKeyInitializationConfig = (value: unknown): value is PrivateKeyInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return isArrayBuffer((value as PrivateKeyInitializationConfig).privateKey)\n }\n return false\n}\n\nexport const isMnemonicInitializationConfig = (value: unknown): value is MnemonicInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return (\n typeof (value as MnemonicInitializationConfig).mnemonic === 'string' && typeof ((value as MnemonicInitializationConfig).path ?? '') === 'string'\n )\n }\n return false\n}\n\nexport const isInitializationConfig = (value: unknown): value is InitializationConfig => {\n return isPhraseInitializationConfig(value) || isPrivateKeyInitializationConfig(value) || isMnemonicInitializationConfig(value)\n}\n\nexport interface AccountInstance {\n readonly address: Address\n readonly addressBytes: ArrayBuffer\n previousHash: Hash | undefined\n previousHashBytes: ArrayBuffer | undefined\n readonly private: PrivateKeyInstance\n readonly public: PublicKeyInstance\n sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>\n verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const isAccountInstance = (account: any): account is AccountInstance => {\n return typeof account === 'object' && typeof account['address'] === 'string'\n}\n\nexport interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {\n previousHashStore?: PreviousHashStore\n create(options?: C): Promise<T>\n fromPrivateKey(key: ArrayBuffer | string): Promise<AccountInstance>\n random(): Promise<AccountInstance>\n}\n"],"mappings":";AACA,SAAS,qBAAqB;AAIvB,IAAM,mBAAmB;AAoBzB,IAAM,+BAA+B,CAAC,UAAwD;AACnG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,OAAQ,MAAqC,WAAW;AAAA,EACjE;AACA,SAAO;AACT;AAEO,IAAM,mCAAmC,CAAC,UAA4D;AAC3G,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,cAAe,MAAyC,UAAU;AAAA,EAC3E;AACA,SAAO;AACT;AAEO,IAAM,iCAAiC,CAAC,UAA0D;AACvG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WACE,OAAQ,MAAuC,aAAa,YAAY,QAAS,MAAuC,QAAQ,QAAQ;AAAA,EAE5I;AACA,SAAO;AACT;AAEO,IAAM,yBAAyB,CAAC,UAAkD;AACvF,SAAO,6BAA6B,KAAK,KAAK,iCAAiC,KAAK,KAAK,+BAA+B,KAAK;AAC/H;AAcO,IAAM,oBAAoB,CAAC,YAA6C;AAC7E,SAAO,OAAO,YAAY,YAAY,OAAO,QAAQ,SAAS,MAAM;AACtE;","names":[]}
1
+ {"version":3,"sources":["../../src/Account.ts"],"sourcesContent":["import type { Address, Hash } from '@xylabs/hex'\nimport { isArrayBuffer } from '@xylabs/lodash'\nimport type { PrivateKeyInstance, PublicKeyInstance } from '@xyo-network/key-model'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nexport const ethMessagePrefix = '\\u0019Ethereum Signed Message:\\n'\n\nexport interface PhraseInitializationConfig {\n phrase: string\n}\nexport interface PrivateKeyInitializationConfig {\n privateKey: ArrayBuffer\n}\nexport interface MnemonicInitializationConfig {\n mnemonic: string\n path?: string\n}\nexport interface AccountOptions {\n previousHash?: ArrayBuffer\n}\n\nexport type InitializationConfig = PhraseInitializationConfig | PrivateKeyInitializationConfig | MnemonicInitializationConfig\n\nexport type AccountConfig = InitializationConfig & AccountOptions\n\nexport const isPhraseInitializationConfig = (value: unknown): value is PhraseInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return typeof (value as PhraseInitializationConfig).phrase === 'string'\n }\n return false\n}\n\nexport const isPrivateKeyInitializationConfig = (value: unknown): value is PrivateKeyInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return isArrayBuffer((value as PrivateKeyInitializationConfig).privateKey)\n }\n return false\n}\n\nexport const isMnemonicInitializationConfig = (value: unknown): value is MnemonicInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return (\n typeof (value as MnemonicInitializationConfig).mnemonic === 'string' && typeof ((value as MnemonicInitializationConfig).path ?? '') === 'string'\n )\n }\n return false\n}\n\nexport const isInitializationConfig = (value: unknown): value is InitializationConfig => {\n return isPhraseInitializationConfig(value) || isPrivateKeyInitializationConfig(value) || isMnemonicInitializationConfig(value)\n}\n\nexport interface AccountInstance {\n readonly address: Address\n readonly addressBytes: ArrayBuffer\n previousHash: Hash | undefined\n previousHashBytes: ArrayBuffer | undefined\n readonly private?: PrivateKeyInstance\n readonly public?: PublicKeyInstance\n sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>\n verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const isAccountInstance = (account: any): account is AccountInstance => {\n return typeof account === 'object' && typeof account['address'] === 'string'\n}\n\nexport interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {\n previousHashStore?: PreviousHashStore\n create(options?: C): Promise<T>\n fromPrivateKey(key: ArrayBuffer | string): Promise<AccountInstance>\n random(): Promise<AccountInstance>\n}\n"],"mappings":";AACA,SAAS,qBAAqB;AAIvB,IAAM,mBAAmB;AAoBzB,IAAM,+BAA+B,CAAC,UAAwD;AACnG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,OAAQ,MAAqC,WAAW;AAAA,EACjE;AACA,SAAO;AACT;AAEO,IAAM,mCAAmC,CAAC,UAA4D;AAC3G,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,cAAe,MAAyC,UAAU;AAAA,EAC3E;AACA,SAAO;AACT;AAEO,IAAM,iCAAiC,CAAC,UAA0D;AACvG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WACE,OAAQ,MAAuC,aAAa,YAAY,QAAS,MAAuC,QAAQ,QAAQ;AAAA,EAE5I;AACA,SAAO;AACT;AAEO,IAAM,yBAAyB,CAAC,UAAkD;AACvF,SAAO,6BAA6B,KAAK,KAAK,iCAAiC,KAAK,KAAK,+BAA+B,KAAK;AAC/H;AAcO,IAAM,oBAAoB,CAAC,YAA6C;AAC7E,SAAO,OAAO,YAAY,YAAY,OAAO,QAAQ,SAAS,MAAM;AACtE;","names":[]}
@@ -27,10 +27,10 @@ interface AccountInstance {
27
27
  readonly addressBytes: ArrayBuffer;
28
28
  previousHash: Hash | undefined;
29
29
  previousHashBytes: ArrayBuffer | undefined;
30
- readonly private: PrivateKeyInstance;
31
- readonly public: PublicKeyInstance;
32
- sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>;
33
- verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>;
30
+ readonly private?: PrivateKeyInstance;
31
+ readonly public?: PublicKeyInstance;
32
+ sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>;
33
+ verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>;
34
34
  }
35
35
  declare const isAccountInstance: (account: any) => account is AccountInstance;
36
36
  interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Account.ts"],"sourcesContent":["import type { Address, Hash } from '@xylabs/hex'\nimport { isArrayBuffer } from '@xylabs/lodash'\nimport type { PrivateKeyInstance, PublicKeyInstance } from '@xyo-network/key-model'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nexport const ethMessagePrefix = '\\u0019Ethereum Signed Message:\\n'\n\nexport interface PhraseInitializationConfig {\n phrase: string\n}\nexport interface PrivateKeyInitializationConfig {\n privateKey: ArrayBuffer\n}\nexport interface MnemonicInitializationConfig {\n mnemonic: string\n path?: string\n}\nexport interface AccountOptions {\n previousHash?: ArrayBuffer\n}\n\nexport type InitializationConfig = PhraseInitializationConfig | PrivateKeyInitializationConfig | MnemonicInitializationConfig\n\nexport type AccountConfig = InitializationConfig & AccountOptions\n\nexport const isPhraseInitializationConfig = (value: unknown): value is PhraseInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return typeof (value as PhraseInitializationConfig).phrase === 'string'\n }\n return false\n}\n\nexport const isPrivateKeyInitializationConfig = (value: unknown): value is PrivateKeyInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return isArrayBuffer((value as PrivateKeyInitializationConfig).privateKey)\n }\n return false\n}\n\nexport const isMnemonicInitializationConfig = (value: unknown): value is MnemonicInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return (\n typeof (value as MnemonicInitializationConfig).mnemonic === 'string' && typeof ((value as MnemonicInitializationConfig).path ?? '') === 'string'\n )\n }\n return false\n}\n\nexport const isInitializationConfig = (value: unknown): value is InitializationConfig => {\n return isPhraseInitializationConfig(value) || isPrivateKeyInitializationConfig(value) || isMnemonicInitializationConfig(value)\n}\n\nexport interface AccountInstance {\n readonly address: Address\n readonly addressBytes: ArrayBuffer\n previousHash: Hash | undefined\n previousHashBytes: ArrayBuffer | undefined\n readonly private: PrivateKeyInstance\n readonly public: PublicKeyInstance\n sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>\n verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const isAccountInstance = (account: any): account is AccountInstance => {\n return typeof account === 'object' && typeof account['address'] === 'string'\n}\n\nexport interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {\n previousHashStore?: PreviousHashStore\n create(options?: C): Promise<T>\n fromPrivateKey(key: ArrayBuffer | string): Promise<AccountInstance>\n random(): Promise<AccountInstance>\n}\n"],"mappings":";AACA,SAAS,qBAAqB;AAIvB,IAAM,mBAAmB;AAoBzB,IAAM,+BAA+B,CAAC,UAAwD;AACnG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,OAAQ,MAAqC,WAAW;AAAA,EACjE;AACA,SAAO;AACT;AAEO,IAAM,mCAAmC,CAAC,UAA4D;AAC3G,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,cAAe,MAAyC,UAAU;AAAA,EAC3E;AACA,SAAO;AACT;AAEO,IAAM,iCAAiC,CAAC,UAA0D;AACvG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WACE,OAAQ,MAAuC,aAAa,YAAY,QAAS,MAAuC,QAAQ,QAAQ;AAAA,EAE5I;AACA,SAAO;AACT;AAEO,IAAM,yBAAyB,CAAC,UAAkD;AACvF,SAAO,6BAA6B,KAAK,KAAK,iCAAiC,KAAK,KAAK,+BAA+B,KAAK;AAC/H;AAcO,IAAM,oBAAoB,CAAC,YAA6C;AAC7E,SAAO,OAAO,YAAY,YAAY,OAAO,QAAQ,SAAS,MAAM;AACtE;","names":[]}
1
+ {"version":3,"sources":["../../src/Account.ts"],"sourcesContent":["import type { Address, Hash } from '@xylabs/hex'\nimport { isArrayBuffer } from '@xylabs/lodash'\nimport type { PrivateKeyInstance, PublicKeyInstance } from '@xyo-network/key-model'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nexport const ethMessagePrefix = '\\u0019Ethereum Signed Message:\\n'\n\nexport interface PhraseInitializationConfig {\n phrase: string\n}\nexport interface PrivateKeyInitializationConfig {\n privateKey: ArrayBuffer\n}\nexport interface MnemonicInitializationConfig {\n mnemonic: string\n path?: string\n}\nexport interface AccountOptions {\n previousHash?: ArrayBuffer\n}\n\nexport type InitializationConfig = PhraseInitializationConfig | PrivateKeyInitializationConfig | MnemonicInitializationConfig\n\nexport type AccountConfig = InitializationConfig & AccountOptions\n\nexport const isPhraseInitializationConfig = (value: unknown): value is PhraseInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return typeof (value as PhraseInitializationConfig).phrase === 'string'\n }\n return false\n}\n\nexport const isPrivateKeyInitializationConfig = (value: unknown): value is PrivateKeyInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return isArrayBuffer((value as PrivateKeyInitializationConfig).privateKey)\n }\n return false\n}\n\nexport const isMnemonicInitializationConfig = (value: unknown): value is MnemonicInitializationConfig => {\n if (typeof value === 'object' && value !== null) {\n return (\n typeof (value as MnemonicInitializationConfig).mnemonic === 'string' && typeof ((value as MnemonicInitializationConfig).path ?? '') === 'string'\n )\n }\n return false\n}\n\nexport const isInitializationConfig = (value: unknown): value is InitializationConfig => {\n return isPhraseInitializationConfig(value) || isPrivateKeyInitializationConfig(value) || isMnemonicInitializationConfig(value)\n}\n\nexport interface AccountInstance {\n readonly address: Address\n readonly addressBytes: ArrayBuffer\n previousHash: Hash | undefined\n previousHashBytes: ArrayBuffer | undefined\n readonly private?: PrivateKeyInstance\n readonly public?: PublicKeyInstance\n sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>\n verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const isAccountInstance = (account: any): account is AccountInstance => {\n return typeof account === 'object' && typeof account['address'] === 'string'\n}\n\nexport interface AccountStatic<T extends AccountInstance = AccountInstance, C extends AccountConfig = AccountConfig> {\n previousHashStore?: PreviousHashStore\n create(options?: C): Promise<T>\n fromPrivateKey(key: ArrayBuffer | string): Promise<AccountInstance>\n random(): Promise<AccountInstance>\n}\n"],"mappings":";AACA,SAAS,qBAAqB;AAIvB,IAAM,mBAAmB;AAoBzB,IAAM,+BAA+B,CAAC,UAAwD;AACnG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,OAAQ,MAAqC,WAAW;AAAA,EACjE;AACA,SAAO;AACT;AAEO,IAAM,mCAAmC,CAAC,UAA4D;AAC3G,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WAAO,cAAe,MAAyC,UAAU;AAAA,EAC3E;AACA,SAAO;AACT;AAEO,IAAM,iCAAiC,CAAC,UAA0D;AACvG,MAAI,OAAO,UAAU,YAAY,UAAU,MAAM;AAC/C,WACE,OAAQ,MAAuC,aAAa,YAAY,QAAS,MAAuC,QAAQ,QAAQ;AAAA,EAE5I;AACA,SAAO;AACT;AAEO,IAAM,yBAAyB,CAAC,UAAkD;AACvF,SAAO,6BAA6B,KAAK,KAAK,iCAAiC,KAAK,KAAK,+BAA+B,KAAK;AAC/H;AAcO,IAAM,oBAAoB,CAAC,YAA6C;AAC7E,SAAO,OAAO,YAAY,YAAY,OAAO,QAAQ,SAAS,MAAM;AACtE;","names":[]}
package/package.json CHANGED
@@ -1,24 +1,42 @@
1
1
  {
2
2
  "name": "@xyo-network/account-model",
3
+ "version": "3.0.7",
4
+ "description": "Primary SDK for using XYO Protocol 2.0",
5
+ "homepage": "https://xyo.network",
6
+ "bugs": {
7
+ "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues",
8
+ "email": "support@xyo.network"
9
+ },
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
13
+ },
14
+ "license": "LGPL-3.0-only",
3
15
  "author": {
4
- "email": "support@xyo.network",
5
16
  "name": "XYO Development Team",
17
+ "email": "support@xyo.network",
6
18
  "url": "https://xyo.network"
7
19
  },
8
- "bugs": {
9
- "email": "support@xyo.network",
10
- "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
20
+ "sideEffects": false,
21
+ "type": "module",
22
+ "exports": {
23
+ ".": {
24
+ "types": "./dist/neutral/index.d.ts",
25
+ "default": "./dist/neutral/index.mjs"
26
+ },
27
+ "./package.json": "./package.json"
11
28
  },
29
+ "module": "dist/neutral/index.mjs",
30
+ "types": "dist/neutral/index.d.ts",
12
31
  "dependencies": {
13
32
  "@xylabs/hex": "^4.0.2",
14
33
  "@xylabs/lodash": "^4.0.2",
15
- "@xyo-network/key-model": "^3.0.5",
16
- "@xyo-network/previous-hash-store-model": "^3.0.5"
34
+ "@xyo-network/key-model": "^3.0.7",
35
+ "@xyo-network/previous-hash-store-model": "^3.0.7"
17
36
  },
18
- "description": "Primary SDK for using XYO Protocol 2.0",
19
37
  "devDependencies": {
20
- "@xylabs/ts-scripts-yarn3": "^4.0.0-rc.20",
21
- "@xylabs/tsconfig": "^4.0.0-rc.20",
38
+ "@xylabs/ts-scripts-yarn3": "^4.0.0",
39
+ "@xylabs/tsconfig": "^4.0.0",
22
40
  "ethers": "^6.13.2",
23
41
  "typescript": "^5.5.4"
24
42
  },
@@ -30,25 +48,7 @@
30
48
  "optional": true
31
49
  }
32
50
  },
33
- "exports": {
34
- ".": {
35
- "types": "./dist/neutral/index.d.ts",
36
- "default": "./dist/neutral/index.mjs"
37
- },
38
- "./package.json": "./package.json"
39
- },
40
- "module": "dist/neutral/index.mjs",
41
- "types": "dist/neutral/index.d.ts",
42
- "homepage": "https://xyo.network",
43
- "license": "LGPL-3.0-only",
44
51
  "publishConfig": {
45
52
  "access": "public"
46
- },
47
- "repository": {
48
- "type": "git",
49
- "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
50
- },
51
- "sideEffects": false,
52
- "version": "3.0.5",
53
- "type": "module"
53
+ }
54
54
  }
package/src/Account.ts CHANGED
@@ -55,10 +55,10 @@ export interface AccountInstance {
55
55
  readonly addressBytes: ArrayBuffer
56
56
  previousHash: Hash | undefined
57
57
  previousHashBytes: ArrayBuffer | undefined
58
- readonly private: PrivateKeyInstance
59
- readonly public: PublicKeyInstance
60
- sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => ArrayBuffer | Promise<ArrayBuffer>
61
- verify: (msg: ArrayBuffer, signature: ArrayBuffer) => boolean | Promise<boolean>
58
+ readonly private?: PrivateKeyInstance
59
+ readonly public?: PublicKeyInstance
60
+ sign: (hash: ArrayBuffer, previousHash: ArrayBuffer | undefined) => Promise<ArrayBuffer>
61
+ verify: (msg: ArrayBuffer, signature: ArrayBuffer) => Promise<boolean>
62
62
  }
63
63
 
64
64
  // eslint-disable-next-line @typescript-eslint/no-explicit-any