@xyo-network/boundwitness-model 3.9.17 → 3.9.19

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 (48) hide show
  1. package/dist/browser/BoundWitness/BoundWitness.d.ts +44 -0
  2. package/dist/browser/BoundWitness/BoundWitness.d.ts.map +1 -0
  3. package/dist/browser/BoundWitness/BoundWitnessJsonSchema.d.ts +37 -0
  4. package/dist/browser/BoundWitness/BoundWitnessJsonSchema.d.ts.map +1 -0
  5. package/dist/browser/BoundWitness/BoundWitnessSchema.d.ts +3 -0
  6. package/dist/browser/BoundWitness/BoundWitnessSchema.d.ts.map +1 -0
  7. package/dist/browser/BoundWitness/index.d.ts +4 -0
  8. package/dist/browser/BoundWitness/index.d.ts.map +1 -0
  9. package/dist/browser/QueryBoundWitness.d.ts +12 -0
  10. package/dist/browser/QueryBoundWitness.d.ts.map +1 -0
  11. package/dist/browser/index.d.ts +4 -97
  12. package/dist/browser/index.d.ts.map +1 -0
  13. package/dist/browser/index.mjs.map +1 -1
  14. package/dist/browser/isBoundWitness.d.ts +13 -0
  15. package/dist/browser/isBoundWitness.d.ts.map +1 -0
  16. package/dist/neutral/BoundWitness/BoundWitness.d.ts +44 -0
  17. package/dist/neutral/BoundWitness/BoundWitness.d.ts.map +1 -0
  18. package/dist/neutral/BoundWitness/BoundWitnessJsonSchema.d.ts +37 -0
  19. package/dist/neutral/BoundWitness/BoundWitnessJsonSchema.d.ts.map +1 -0
  20. package/dist/neutral/BoundWitness/BoundWitnessSchema.d.ts +3 -0
  21. package/dist/neutral/BoundWitness/BoundWitnessSchema.d.ts.map +1 -0
  22. package/dist/neutral/BoundWitness/index.d.ts +4 -0
  23. package/dist/neutral/BoundWitness/index.d.ts.map +1 -0
  24. package/dist/neutral/QueryBoundWitness.d.ts +12 -0
  25. package/dist/neutral/QueryBoundWitness.d.ts.map +1 -0
  26. package/dist/neutral/index.d.ts +4 -97
  27. package/dist/neutral/index.d.ts.map +1 -0
  28. package/dist/neutral/index.mjs.map +1 -1
  29. package/dist/neutral/isBoundWitness.d.ts +13 -0
  30. package/dist/neutral/isBoundWitness.d.ts.map +1 -0
  31. package/dist/node/BoundWitness/BoundWitness.d.ts +44 -0
  32. package/dist/node/BoundWitness/BoundWitness.d.ts.map +1 -0
  33. package/dist/node/BoundWitness/BoundWitnessJsonSchema.d.ts +37 -0
  34. package/dist/node/BoundWitness/BoundWitnessJsonSchema.d.ts.map +1 -0
  35. package/dist/node/BoundWitness/BoundWitnessSchema.d.ts +3 -0
  36. package/dist/node/BoundWitness/BoundWitnessSchema.d.ts.map +1 -0
  37. package/dist/node/BoundWitness/index.d.ts +4 -0
  38. package/dist/node/BoundWitness/index.d.ts.map +1 -0
  39. package/dist/node/QueryBoundWitness.d.ts +12 -0
  40. package/dist/node/QueryBoundWitness.d.ts.map +1 -0
  41. package/dist/node/index.d.ts +4 -97
  42. package/dist/node/index.d.ts.map +1 -0
  43. package/dist/node/index.mjs.map +1 -1
  44. package/dist/node/isBoundWitness.d.ts +13 -0
  45. package/dist/node/isBoundWitness.d.ts.map +1 -0
  46. package/package.json +6 -6
  47. package/src/BoundWitness/BoundWitness.ts +2 -2
  48. package/src/QueryBoundWitness.ts +2 -1
@@ -0,0 +1,44 @@
1
+ import type { Address, Hash, Hex } from '@xylabs/hex';
2
+ import type { EmptyObject, JsonObject } from '@xylabs/object';
3
+ import type { Payload, Schema } from '@xyo-network/payload-model';
4
+ import type { BoundWitnessSchema } from './BoundWitnessSchema.ts';
5
+ export interface BoundWitnessRequiredFields {
6
+ /** @field Array of signatures by the accounts that are listed in addresses */
7
+ addresses: Address[];
8
+ payload_hashes: Hash[];
9
+ payload_schemas: Schema[];
10
+ previous_hashes: (Hash | null)[];
11
+ }
12
+ export interface BoundWitnessMeta {
13
+ /**
14
+ * @field The address to which the query is directed
15
+ */
16
+ $destination?: Address;
17
+ /**
18
+ * @field The query that initiated the bound witness
19
+ */
20
+ $sourceQuery?: Hash;
21
+ }
22
+ export interface BoundWitnessBlockField {
23
+ /** @field sequential number (if this boundwitness is part of a multi-party chain) */
24
+ block: number;
25
+ }
26
+ export interface BoundWitnessChainField {
27
+ /** @field unique id of a multi-party chain (usually staking contract address) */
28
+ chain: Hex;
29
+ }
30
+ export interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {
31
+ root: Hash;
32
+ }
33
+ export interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {
34
+ }
35
+ export type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<T extends void ? BoundWitnessFields : BoundWitnessFields & T, T extends void ? BoundWitnessSchema : T extends Payload ? T['schema'] : BoundWitnessSchema> & BoundWitnessMeta;
36
+ export type Signed<T> = T & {
37
+ $signatures: Hex[];
38
+ };
39
+ export type WithBlock = BoundWitness & BoundWitnessBlockField;
40
+ export declare const hasBlock: (bw: BoundWitness) => bw is WithBlock;
41
+ export declare const asBlock: (bw: BoundWitness) => WithBlock;
42
+ export type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>;
43
+ export type AnyBoundWitness = BoundWitness<JsonObject>;
44
+ //# sourceMappingURL=BoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitness.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAAE,IAAI,EAAE,GAAG,EACnB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,MAAM,WAAW,0BAA0B;IACzC,8EAA8E;IAC9E,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,cAAc,EAAE,IAAI,EAAE,CAAA;IACtB,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,eAAe,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,iFAAiF;IACjF,KAAK,EAAE,GAAG,CAAA;CACX;AAED,MAAM,WAAW,0BAA2B,SAAQ,OAAO,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC;IAClH,IAAI,EAAE,IAAI,CAAA;CACX;AAED,MAAM,WAAW,kBAAmB,SAAQ,0BAA0B,EAAE,OAAO,CAAC,0BAA0B,CAAC;CAAG;AAE9G,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,OAAO,CACvF,CAAC,SAAS,IAAI,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,CAAC,EAC5D,CAAC,SAAS,IAAI,GAAG,kBAAkB,GAC/B,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,GAC7B,kBAAkB,CACzB,GAAG,gBAAgB,CAAA;AAEpB,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG;IAC1B,WAAW,EAAE,GAAG,EAAE,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,sBAAsB,CAAA;AAE7D,eAAO,MAAM,QAAQ,GAAI,IAAI,YAAY,KAAG,EAAE,IAAI,SAAmE,CAAA;AACrH,eAAO,MAAM,OAAO,GAAI,IAAI,YAAY,KAAG,SAA4B,CAAA;AAEvE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzG,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ export declare const BoundWitnessJsonSchema: () => {
2
+ $id: string;
3
+ additionalProperties: boolean;
4
+ properties: {
5
+ addresses: {
6
+ items: {
7
+ type: string;
8
+ };
9
+ type: string;
10
+ };
11
+ payload_hashes: {
12
+ items: {
13
+ type: string;
14
+ };
15
+ type: string;
16
+ };
17
+ payload_schemas: {
18
+ items: {
19
+ type: string;
20
+ };
21
+ type: string;
22
+ };
23
+ previous_hashes: {
24
+ items: {
25
+ nullable: boolean;
26
+ type: string;
27
+ };
28
+ type: string;
29
+ };
30
+ schema: {
31
+ type: string;
32
+ };
33
+ };
34
+ required: string[];
35
+ type: string;
36
+ };
37
+ //# sourceMappingURL=BoundWitnessJsonSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitnessJsonSchema.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitnessJsonSchema.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAclC,CAAA"}
@@ -0,0 +1,3 @@
1
+ export declare const BoundWitnessSchema: "network.xyo.boundwitness";
2
+ export type BoundWitnessSchema = typeof BoundWitnessSchema;
3
+ //# sourceMappingURL=BoundWitnessSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitnessSchema.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitnessSchema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,EAAG,0BAAmC,CAAA;AACrE,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './BoundWitness.ts';
2
+ export * from './BoundWitnessJsonSchema.ts';
3
+ export * from './BoundWitnessSchema.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { Hash } from '@xylabs/hex';
2
+ import type { WithStorageMeta } from '@xyo-network/payload-model';
3
+ import type { BoundWitness } from './BoundWitness/index.ts';
4
+ export type QueryBoundWitnessFields = {
5
+ error_hashes?: Hash[];
6
+ query: Hash;
7
+ };
8
+ export type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>;
9
+ export type QueryBoundWitness = UnsignedQueryBoundWitness;
10
+ export declare const isQueryBoundWitness: (x?: unknown) => x is QueryBoundWitness;
11
+ export declare const isQueryBoundWitnessWithStorageMeta: (x?: unknown) => x is WithStorageMeta<QueryBoundWitness>;
12
+ //# sourceMappingURL=QueryBoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBoundWitness.d.ts","sourceRoot":"","sources":["../../src/QueryBoundWitness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAG3D,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;IACrB,KAAK,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAA;AAG7E,MAAM,MAAM,iBAAiB,GAAG,yBAAyB,CAAA;AAEzD,eAAO,MAAM,mBAAmB,GAAI,IAAI,OAAO,KAAG,CAAC,IAAI,iBAAuF,CAAA;AAC9I,eAAO,MAAM,kCAAkC,GAAI,IAAI,OAAO,KAAG,CAAC,IAAI,eAAe,CAAC,iBAAiB,CAA+C,CAAA"}
@@ -1,97 +1,4 @@
1
- import { Address, Hash, Hex } from '@xylabs/hex';
2
- import { EmptyObject, JsonObject } from '@xylabs/object';
3
- import { Schema, Payload, WithStorageMeta } from '@xyo-network/payload-model';
4
- import * as _store__xylabs_promise_npm_4_5_1_97d36b712b_package from '.store/@xylabs-promise-npm-4.5.1-97d36b712b/package';
5
-
6
- declare const BoundWitnessSchema: "network.xyo.boundwitness";
7
- type BoundWitnessSchema = typeof BoundWitnessSchema;
8
-
9
- interface BoundWitnessRequiredFields {
10
- addresses: Address[];
11
- payload_hashes: Hash[];
12
- payload_schemas: Schema[];
13
- previous_hashes: (Hash | null)[];
14
- }
15
- interface BoundWitnessMeta {
16
- $destination?: Address;
17
- $sourceQuery?: Hash;
18
- }
19
- interface BoundWitnessBlockField {
20
- block: Hex;
21
- }
22
- interface BoundWitnessChainField {
23
- chain: Hex;
24
- }
25
- interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {
26
- root: Hash;
27
- }
28
- interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {
29
- }
30
- type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<T extends void ? BoundWitnessFields : BoundWitnessFields & T, T extends void ? BoundWitnessSchema : T extends Payload ? T['schema'] : BoundWitnessSchema> & BoundWitnessMeta;
31
- type Signed<T> = T & {
32
- $signatures: Hex[];
33
- };
34
- type WithBlock = BoundWitness & BoundWitnessBlockField;
35
- declare const hasBlock: (bw: BoundWitness) => bw is WithBlock;
36
- declare const asBlock: (bw: BoundWitness) => WithBlock;
37
- type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>;
38
- type AnyBoundWitness = BoundWitness<JsonObject>;
39
-
40
- declare const BoundWitnessJsonSchema: () => {
41
- $id: string;
42
- additionalProperties: boolean;
43
- properties: {
44
- addresses: {
45
- items: {
46
- type: string;
47
- };
48
- type: string;
49
- };
50
- payload_hashes: {
51
- items: {
52
- type: string;
53
- };
54
- type: string;
55
- };
56
- payload_schemas: {
57
- items: {
58
- type: string;
59
- };
60
- type: string;
61
- };
62
- previous_hashes: {
63
- items: {
64
- nullable: boolean;
65
- type: string;
66
- };
67
- type: string;
68
- };
69
- schema: {
70
- type: string;
71
- };
72
- };
73
- required: string[];
74
- type: string;
75
- };
76
-
77
- declare const isBoundWitness: (value: unknown) => value is BoundWitness;
78
- declare const notBoundWitness: (x?: unknown | null) => x is BoundWitness;
79
- declare const asBoundWitness: <T extends BoundWitness<{
80
- schema: string;
81
- }> = BoundWitness>(payload?: unknown) => T | undefined;
82
- declare const asOptionalBoundWitness: <TType extends BoundWitness>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
83
- declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
84
- declare const asBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
85
- declare const asOptionalBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
86
- declare const isUnsignedBoundWitness: (value: unknown) => value is UnsignedBoundWitness;
87
-
88
- type QueryBoundWitnessFields = {
89
- error_hashes?: Hash[];
90
- query: Hash;
91
- };
92
- type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>;
93
- type QueryBoundWitness = UnsignedQueryBoundWitness;
94
- declare const isQueryBoundWitness: (x?: unknown) => x is QueryBoundWitness;
95
- declare const isQueryBoundWitnessWithStorageMeta: (x?: unknown) => x is WithStorageMeta<QueryBoundWitness>;
96
-
97
- export { type AnyBoundWitness, type BoundWitness, type BoundWitnessBlockField, type BoundWitnessChainField, type BoundWitnessFields, BoundWitnessJsonSchema, type BoundWitnessMeta, type BoundWitnessOptionalFields, type BoundWitnessRequiredFields, BoundWitnessSchema, type QueryBoundWitness, type QueryBoundWitnessFields, type Signed, type UnsignedBoundWitness, type UnsignedQueryBoundWitness, type WithBlock, asBlock, asBoundWitness, asBoundWitnessWithStorageMeta, asOptionalBoundWitness, asOptionalBoundWitnessWithStorageMeta, hasBlock, isBoundWitness, isBoundWitnessWithStorageMeta, isQueryBoundWitness, isQueryBoundWitnessWithStorageMeta, isUnsignedBoundWitness, notBoundWitness };
1
+ export * from './BoundWitness/index.ts';
2
+ export * from './isBoundWitness.ts';
3
+ export * from './QueryBoundWitness.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/BoundWitness/BoundWitness.ts","../../src/BoundWitness/BoundWitnessJsonSchema.ts","../../src/BoundWitness/BoundWitnessSchema.ts","../../src/isBoundWitness.ts","../../src/QueryBoundWitness.ts"],"sourcesContent":["import type {\n Address, Hash, Hex,\n} from '@xylabs/hex'\nimport type { EmptyObject, JsonObject } from '@xylabs/object'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\n\nimport type { BoundWitnessSchema } from './BoundWitnessSchema.ts'\n\nexport interface BoundWitnessRequiredFields {\n /** @field Array of signatures by the accounts that are listed in addresses */\n addresses: Address[]\n payload_hashes: Hash[]\n payload_schemas: Schema[]\n previous_hashes: (Hash | null)[]\n}\n\nexport interface BoundWitnessMeta {\n /**\n * @field The address to which the query is directed\n */\n $destination?: Address\n /**\n * @field The query that initiated the bound witness\n */\n $sourceQuery?: Hash\n}\n\nexport interface BoundWitnessBlockField {\n /** @field sequential number (if this boundwitness is part of a multi-party chain) zero padded to 32 characters */\n block: Hex\n}\n\nexport interface BoundWitnessChainField {\n /** @field unique id of a multi-party chain (usually staking contract address) */\n chain: Hex\n}\n\nexport interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {\n root: Hash\n}\n\nexport interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {}\n\nexport type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<\n T extends void ? BoundWitnessFields : BoundWitnessFields & T,\n T extends void ? BoundWitnessSchema\n : T extends Payload ? T['schema']\n : BoundWitnessSchema\n> & BoundWitnessMeta\n\nexport type Signed<T> = T & {\n $signatures: Hex[]\n}\n\nexport type WithBlock = BoundWitness & BoundWitnessBlockField\n\nexport const hasBlock = (bw: BoundWitness): bw is WithBlock => bw.block !== undefined && typeof bw.block === 'string'\nexport const asBlock = (bw: BoundWitness): WithBlock => bw as WithBlock\n\nexport type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>\n\nexport type AnyBoundWitness = BoundWitness<JsonObject>\n","// Should type as JSONSchemaType<BoundWitness> once ajv/eslint issue is fixed\n// https://github.com/microsoft/TypeScript/issues/44851\n\nexport const BoundWitnessJsonSchema = () => {\n return {\n $id: 'https://schemas.xyo.network/2.0/boundwitness',\n additionalProperties: false,\n properties: {\n addresses: { items: { type: 'string' }, type: 'array' },\n payload_hashes: { items: { type: 'string' }, type: 'array' },\n payload_schemas: { items: { type: 'string' }, type: 'array' },\n previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },\n schema: { type: 'string' },\n },\n required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],\n type: 'object',\n }\n}\n","export const BoundWitnessSchema = 'network.xyo.boundwitness' as const\nexport type BoundWitnessSchema = typeof BoundWitnessSchema\n","import { AsObjectFactory } from '@xylabs/object'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport {\n isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,\n} from '@xyo-network/payload-model'\n\nimport type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts'\nimport { BoundWitnessSchema } from './BoundWitness/index.ts'\n\nexport const isBoundWitness = (value: unknown): value is BoundWitness => isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value)\n\nexport const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)\n\n// TODO: Use AsObjectFactory here to match standard pattern\n// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior\nexport const asBoundWitness = <T extends BoundWitness<{ schema: string }> = BoundWitness>(payload?: unknown) =>\n isBoundWitness(payload) ? (payload as T) : undefined\n\nexport const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)\n\nexport const isBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BoundWitness> =>\n isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value) && isStorageMeta(value)\nexport const asBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\nexport const asOptionalBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\n\nexport const isUnsignedBoundWitness = (value: unknown): value is UnsignedBoundWitness =>\n isPayloadOfSchemaType<UnsignedBoundWitness>(BoundWitnessSchema)(value)\n","import type { Hash } from '@xylabs/hex'\nimport { isStorageMeta, type WithStorageMeta } from '@xyo-network/payload-model'\n\nimport type { BoundWitness } from './BoundWitness/index.ts'\nimport { isBoundWitness } from './isBoundWitness.ts'\n\nexport type QueryBoundWitnessFields = {\n error_hashes?: Hash[]\n query: Hash\n}\n\nexport type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>\n\n// eslint-disable-next-line sonarjs/redundant-type-aliases\nexport type QueryBoundWitness = UnsignedQueryBoundWitness\n\nexport const isQueryBoundWitness = (x?: unknown): x is QueryBoundWitness => isBoundWitness(x) && (x as QueryBoundWitness)?.query !== undefined\nexport const isQueryBoundWitnessWithStorageMeta = (x?: unknown): x is WithStorageMeta<QueryBoundWitness> => isQueryBoundWitness(x) && isStorageMeta(x)\n"],"mappings":";AAwDO,IAAM,WAAW,CAAC,OAAsC,GAAG,UAAU,UAAa,OAAO,GAAG,UAAU;AACtG,IAAM,UAAU,CAAC,OAAgC;;;ACtDjD,IAAM,yBAAyB,MAAM;AAC1C,SAAO;AAAA,IACL,KAAK;AAAA,IACL,sBAAsB;AAAA,IACtB,YAAY;AAAA,MACV,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MACtD,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC3D,iBAAiB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5D,iBAAiB,EAAE,OAAO,EAAE,UAAU,MAAM,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5E,QAAQ,EAAE,MAAM,SAAS;AAAA,IAC3B;AAAA,IACA,UAAU,CAAC,aAAa,kBAAkB,mBAAmB,mBAAmB,QAAQ;AAAA,IACxF,MAAM;AAAA,EACR;AACF;;;ACjBO,IAAM,qBAAqB;;;ACAlC,SAAS,uBAAuB;AAEhC;AAAA,EACE;AAAA,EAAuB;AAAA,EAAe;AAAA,OACjC;AAKA,IAAM,iBAAiB,CAAC,UAA0C,sBAAoC,kBAAkB,EAAE,KAAK;AAE/H,IAAM,kBAAkB,uBAAqC,kBAAkB;AAI/E,IAAM,iBAAiB,CAA4D,YACxF,eAAe,OAAO,IAAK,UAAgB;AAEtC,IAAM,yBAAyB,gBAAgB,eAA6B,cAAc;AAE1F,IAAM,gCAAgC,CAAC,UAC5C,sBAAoC,kBAAkB,EAAE,KAAK,KAAK,cAAc,KAAK;AAChF,IAAM,gCAAgC,gBAAgB,eAA8C,6BAA6B;AACjI,IAAM,wCAAwC,gBAAgB,eAA8C,6BAA6B;AAEzI,IAAM,yBAAyB,CAAC,UACrC,sBAA4C,kBAAkB,EAAE,KAAK;;;ACzBvE,SAAS,iBAAAA,sBAA2C;AAe7C,IAAM,sBAAsB,CAAC,MAAwC,eAAe,CAAC,KAAM,GAAyB,UAAU;AAC9H,IAAM,qCAAqC,CAAC,MAAyD,oBAAoB,CAAC,KAAKC,eAAc,CAAC;","names":["isStorageMeta","isStorageMeta"]}
1
+ {"version":3,"sources":["../../src/BoundWitness/BoundWitness.ts","../../src/BoundWitness/BoundWitnessJsonSchema.ts","../../src/BoundWitness/BoundWitnessSchema.ts","../../src/isBoundWitness.ts","../../src/QueryBoundWitness.ts"],"sourcesContent":["import type {\n Address, Hash, Hex,\n} from '@xylabs/hex'\nimport type { EmptyObject, JsonObject } from '@xylabs/object'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\n\nimport type { BoundWitnessSchema } from './BoundWitnessSchema.ts'\n\nexport interface BoundWitnessRequiredFields {\n /** @field Array of signatures by the accounts that are listed in addresses */\n addresses: Address[]\n payload_hashes: Hash[]\n payload_schemas: Schema[]\n previous_hashes: (Hash | null)[]\n}\n\nexport interface BoundWitnessMeta {\n /**\n * @field The address to which the query is directed\n */\n $destination?: Address\n /**\n * @field The query that initiated the bound witness\n */\n $sourceQuery?: Hash\n}\n\nexport interface BoundWitnessBlockField {\n /** @field sequential number (if this boundwitness is part of a multi-party chain) */\n block: number\n}\n\nexport interface BoundWitnessChainField {\n /** @field unique id of a multi-party chain (usually staking contract address) */\n chain: Hex\n}\n\nexport interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {\n root: Hash\n}\n\nexport interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {}\n\nexport type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<\n T extends void ? BoundWitnessFields : BoundWitnessFields & T,\n T extends void ? BoundWitnessSchema\n : T extends Payload ? T['schema']\n : BoundWitnessSchema\n> & BoundWitnessMeta\n\nexport type Signed<T> = T & {\n $signatures: Hex[]\n}\n\nexport type WithBlock = BoundWitness & BoundWitnessBlockField\n\nexport const hasBlock = (bw: BoundWitness): bw is WithBlock => bw.block !== undefined && typeof bw.block === 'string'\nexport const asBlock = (bw: BoundWitness): WithBlock => bw as WithBlock\n\nexport type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>\n\nexport type AnyBoundWitness = BoundWitness<JsonObject>\n","// Should type as JSONSchemaType<BoundWitness> once ajv/eslint issue is fixed\n// https://github.com/microsoft/TypeScript/issues/44851\n\nexport const BoundWitnessJsonSchema = () => {\n return {\n $id: 'https://schemas.xyo.network/2.0/boundwitness',\n additionalProperties: false,\n properties: {\n addresses: { items: { type: 'string' }, type: 'array' },\n payload_hashes: { items: { type: 'string' }, type: 'array' },\n payload_schemas: { items: { type: 'string' }, type: 'array' },\n previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },\n schema: { type: 'string' },\n },\n required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],\n type: 'object',\n }\n}\n","export const BoundWitnessSchema = 'network.xyo.boundwitness' as const\nexport type BoundWitnessSchema = typeof BoundWitnessSchema\n","import { AsObjectFactory } from '@xylabs/object'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport {\n isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,\n} from '@xyo-network/payload-model'\n\nimport type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts'\nimport { BoundWitnessSchema } from './BoundWitness/index.ts'\n\nexport const isBoundWitness = (value: unknown): value is BoundWitness => isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value)\n\nexport const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)\n\n// TODO: Use AsObjectFactory here to match standard pattern\n// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior\nexport const asBoundWitness = <T extends BoundWitness<{ schema: string }> = BoundWitness>(payload?: unknown) =>\n isBoundWitness(payload) ? (payload as T) : undefined\n\nexport const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)\n\nexport const isBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BoundWitness> =>\n isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value) && isStorageMeta(value)\nexport const asBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\nexport const asOptionalBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\n\nexport const isUnsignedBoundWitness = (value: unknown): value is UnsignedBoundWitness =>\n isPayloadOfSchemaType<UnsignedBoundWitness>(BoundWitnessSchema)(value)\n","import type { Hash } from '@xylabs/hex'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport { isStorageMeta } from '@xyo-network/payload-model'\n\nimport type { BoundWitness } from './BoundWitness/index.ts'\nimport { isBoundWitness } from './isBoundWitness.ts'\n\nexport type QueryBoundWitnessFields = {\n error_hashes?: Hash[]\n query: Hash\n}\n\nexport type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>\n\n// eslint-disable-next-line sonarjs/redundant-type-aliases\nexport type QueryBoundWitness = UnsignedQueryBoundWitness\n\nexport const isQueryBoundWitness = (x?: unknown): x is QueryBoundWitness => isBoundWitness(x) && (x as QueryBoundWitness)?.query !== undefined\nexport const isQueryBoundWitnessWithStorageMeta = (x?: unknown): x is WithStorageMeta<QueryBoundWitness> => isQueryBoundWitness(x) && isStorageMeta(x)\n"],"mappings":";AAwDO,IAAM,WAAW,CAAC,OAAsC,GAAG,UAAU,UAAa,OAAO,GAAG,UAAU;AACtG,IAAM,UAAU,CAAC,OAAgC;;;ACtDjD,IAAM,yBAAyB,MAAM;AAC1C,SAAO;AAAA,IACL,KAAK;AAAA,IACL,sBAAsB;AAAA,IACtB,YAAY;AAAA,MACV,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MACtD,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC3D,iBAAiB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5D,iBAAiB,EAAE,OAAO,EAAE,UAAU,MAAM,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5E,QAAQ,EAAE,MAAM,SAAS;AAAA,IAC3B;AAAA,IACA,UAAU,CAAC,aAAa,kBAAkB,mBAAmB,mBAAmB,QAAQ;AAAA,IACxF,MAAM;AAAA,EACR;AACF;;;ACjBO,IAAM,qBAAqB;;;ACAlC,SAAS,uBAAuB;AAEhC;AAAA,EACE;AAAA,EAAuB;AAAA,EAAe;AAAA,OACjC;AAKA,IAAM,iBAAiB,CAAC,UAA0C,sBAAoC,kBAAkB,EAAE,KAAK;AAE/H,IAAM,kBAAkB,uBAAqC,kBAAkB;AAI/E,IAAM,iBAAiB,CAA4D,YACxF,eAAe,OAAO,IAAK,UAAgB;AAEtC,IAAM,yBAAyB,gBAAgB,eAA6B,cAAc;AAE1F,IAAM,gCAAgC,CAAC,UAC5C,sBAAoC,kBAAkB,EAAE,KAAK,KAAK,cAAc,KAAK;AAChF,IAAM,gCAAgC,gBAAgB,eAA8C,6BAA6B;AACjI,IAAM,wCAAwC,gBAAgB,eAA8C,6BAA6B;AAEzI,IAAM,yBAAyB,CAAC,UACrC,sBAA4C,kBAAkB,EAAE,KAAK;;;ACxBvE,SAAS,iBAAAA,sBAAqB;AAevB,IAAM,sBAAsB,CAAC,MAAwC,eAAe,CAAC,KAAM,GAAyB,UAAU;AAC9H,IAAM,qCAAqC,CAAC,MAAyD,oBAAoB,CAAC,KAAKC,eAAc,CAAC;","names":["isStorageMeta","isStorageMeta"]}
@@ -0,0 +1,13 @@
1
+ import type { WithStorageMeta } from '@xyo-network/payload-model';
2
+ import type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts';
3
+ export declare const isBoundWitness: (value: unknown) => value is BoundWitness;
4
+ export declare const notBoundWitness: (x?: unknown | null) => x is BoundWitness;
5
+ export declare const asBoundWitness: <T extends BoundWitness<{
6
+ schema: string;
7
+ }> = BoundWitness>(payload?: unknown) => T | undefined;
8
+ export declare const asOptionalBoundWitness: <TType extends BoundWitness>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
9
+ export declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
10
+ export declare const asBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
11
+ export declare const asOptionalBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
12
+ export declare const isUnsignedBoundWitness: (value: unknown) => value is UnsignedBoundWitness;
13
+ //# sourceMappingURL=isBoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isBoundWitness.d.ts","sourceRoot":"","sources":["../../src/isBoundWitness.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAKjE,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAGjF,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAA8E,CAAA;AAEvI,eAAO,MAAM,eAAe,2CAA2D,CAAA;AAIvF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,YAAY,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,YAAY,EAAE,UAAU,OAAO,kBACrD,CAAA;AAEtD,eAAO,MAAM,sBAAsB,6CAJpB,qDAAiB,qCAIkE,CAAA;AAElG,eAAO,MAAM,6BAA6B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,eAAe,CAAC,YAAY,CACZ,CAAA;AACxF,eAAO,MAAM,6BAA6B,8DAR3B,qDAAiB,qCAQyG,CAAA;AACzI,eAAO,MAAM,qCAAqC,8DATnC,qDAAiB,qCASiH,CAAA;AAEjJ,eAAO,MAAM,sBAAsB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,oBACO,CAAA"}
@@ -0,0 +1,44 @@
1
+ import type { Address, Hash, Hex } from '@xylabs/hex';
2
+ import type { EmptyObject, JsonObject } from '@xylabs/object';
3
+ import type { Payload, Schema } from '@xyo-network/payload-model';
4
+ import type { BoundWitnessSchema } from './BoundWitnessSchema.ts';
5
+ export interface BoundWitnessRequiredFields {
6
+ /** @field Array of signatures by the accounts that are listed in addresses */
7
+ addresses: Address[];
8
+ payload_hashes: Hash[];
9
+ payload_schemas: Schema[];
10
+ previous_hashes: (Hash | null)[];
11
+ }
12
+ export interface BoundWitnessMeta {
13
+ /**
14
+ * @field The address to which the query is directed
15
+ */
16
+ $destination?: Address;
17
+ /**
18
+ * @field The query that initiated the bound witness
19
+ */
20
+ $sourceQuery?: Hash;
21
+ }
22
+ export interface BoundWitnessBlockField {
23
+ /** @field sequential number (if this boundwitness is part of a multi-party chain) */
24
+ block: number;
25
+ }
26
+ export interface BoundWitnessChainField {
27
+ /** @field unique id of a multi-party chain (usually staking contract address) */
28
+ chain: Hex;
29
+ }
30
+ export interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {
31
+ root: Hash;
32
+ }
33
+ export interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {
34
+ }
35
+ export type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<T extends void ? BoundWitnessFields : BoundWitnessFields & T, T extends void ? BoundWitnessSchema : T extends Payload ? T['schema'] : BoundWitnessSchema> & BoundWitnessMeta;
36
+ export type Signed<T> = T & {
37
+ $signatures: Hex[];
38
+ };
39
+ export type WithBlock = BoundWitness & BoundWitnessBlockField;
40
+ export declare const hasBlock: (bw: BoundWitness) => bw is WithBlock;
41
+ export declare const asBlock: (bw: BoundWitness) => WithBlock;
42
+ export type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>;
43
+ export type AnyBoundWitness = BoundWitness<JsonObject>;
44
+ //# sourceMappingURL=BoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitness.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAAE,IAAI,EAAE,GAAG,EACnB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,MAAM,WAAW,0BAA0B;IACzC,8EAA8E;IAC9E,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,cAAc,EAAE,IAAI,EAAE,CAAA;IACtB,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,eAAe,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,iFAAiF;IACjF,KAAK,EAAE,GAAG,CAAA;CACX;AAED,MAAM,WAAW,0BAA2B,SAAQ,OAAO,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC;IAClH,IAAI,EAAE,IAAI,CAAA;CACX;AAED,MAAM,WAAW,kBAAmB,SAAQ,0BAA0B,EAAE,OAAO,CAAC,0BAA0B,CAAC;CAAG;AAE9G,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,OAAO,CACvF,CAAC,SAAS,IAAI,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,CAAC,EAC5D,CAAC,SAAS,IAAI,GAAG,kBAAkB,GAC/B,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,GAC7B,kBAAkB,CACzB,GAAG,gBAAgB,CAAA;AAEpB,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG;IAC1B,WAAW,EAAE,GAAG,EAAE,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,sBAAsB,CAAA;AAE7D,eAAO,MAAM,QAAQ,GAAI,IAAI,YAAY,KAAG,EAAE,IAAI,SAAmE,CAAA;AACrH,eAAO,MAAM,OAAO,GAAI,IAAI,YAAY,KAAG,SAA4B,CAAA;AAEvE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzG,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ export declare const BoundWitnessJsonSchema: () => {
2
+ $id: string;
3
+ additionalProperties: boolean;
4
+ properties: {
5
+ addresses: {
6
+ items: {
7
+ type: string;
8
+ };
9
+ type: string;
10
+ };
11
+ payload_hashes: {
12
+ items: {
13
+ type: string;
14
+ };
15
+ type: string;
16
+ };
17
+ payload_schemas: {
18
+ items: {
19
+ type: string;
20
+ };
21
+ type: string;
22
+ };
23
+ previous_hashes: {
24
+ items: {
25
+ nullable: boolean;
26
+ type: string;
27
+ };
28
+ type: string;
29
+ };
30
+ schema: {
31
+ type: string;
32
+ };
33
+ };
34
+ required: string[];
35
+ type: string;
36
+ };
37
+ //# sourceMappingURL=BoundWitnessJsonSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitnessJsonSchema.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitnessJsonSchema.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAclC,CAAA"}
@@ -0,0 +1,3 @@
1
+ export declare const BoundWitnessSchema: "network.xyo.boundwitness";
2
+ export type BoundWitnessSchema = typeof BoundWitnessSchema;
3
+ //# sourceMappingURL=BoundWitnessSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitnessSchema.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitnessSchema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,EAAG,0BAAmC,CAAA;AACrE,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './BoundWitness.ts';
2
+ export * from './BoundWitnessJsonSchema.ts';
3
+ export * from './BoundWitnessSchema.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { Hash } from '@xylabs/hex';
2
+ import type { WithStorageMeta } from '@xyo-network/payload-model';
3
+ import type { BoundWitness } from './BoundWitness/index.ts';
4
+ export type QueryBoundWitnessFields = {
5
+ error_hashes?: Hash[];
6
+ query: Hash;
7
+ };
8
+ export type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>;
9
+ export type QueryBoundWitness = UnsignedQueryBoundWitness;
10
+ export declare const isQueryBoundWitness: (x?: unknown) => x is QueryBoundWitness;
11
+ export declare const isQueryBoundWitnessWithStorageMeta: (x?: unknown) => x is WithStorageMeta<QueryBoundWitness>;
12
+ //# sourceMappingURL=QueryBoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBoundWitness.d.ts","sourceRoot":"","sources":["../../src/QueryBoundWitness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAG3D,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;IACrB,KAAK,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAA;AAG7E,MAAM,MAAM,iBAAiB,GAAG,yBAAyB,CAAA;AAEzD,eAAO,MAAM,mBAAmB,GAAI,IAAI,OAAO,KAAG,CAAC,IAAI,iBAAuF,CAAA;AAC9I,eAAO,MAAM,kCAAkC,GAAI,IAAI,OAAO,KAAG,CAAC,IAAI,eAAe,CAAC,iBAAiB,CAA+C,CAAA"}
@@ -1,97 +1,4 @@
1
- import { Address, Hash, Hex } from '@xylabs/hex';
2
- import { EmptyObject, JsonObject } from '@xylabs/object';
3
- import { Schema, Payload, WithStorageMeta } from '@xyo-network/payload-model';
4
- import * as _store__xylabs_promise_npm_4_5_1_97d36b712b_package from '.store/@xylabs-promise-npm-4.5.1-97d36b712b/package';
5
-
6
- declare const BoundWitnessSchema: "network.xyo.boundwitness";
7
- type BoundWitnessSchema = typeof BoundWitnessSchema;
8
-
9
- interface BoundWitnessRequiredFields {
10
- addresses: Address[];
11
- payload_hashes: Hash[];
12
- payload_schemas: Schema[];
13
- previous_hashes: (Hash | null)[];
14
- }
15
- interface BoundWitnessMeta {
16
- $destination?: Address;
17
- $sourceQuery?: Hash;
18
- }
19
- interface BoundWitnessBlockField {
20
- block: Hex;
21
- }
22
- interface BoundWitnessChainField {
23
- chain: Hex;
24
- }
25
- interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {
26
- root: Hash;
27
- }
28
- interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {
29
- }
30
- type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<T extends void ? BoundWitnessFields : BoundWitnessFields & T, T extends void ? BoundWitnessSchema : T extends Payload ? T['schema'] : BoundWitnessSchema> & BoundWitnessMeta;
31
- type Signed<T> = T & {
32
- $signatures: Hex[];
33
- };
34
- type WithBlock = BoundWitness & BoundWitnessBlockField;
35
- declare const hasBlock: (bw: BoundWitness) => bw is WithBlock;
36
- declare const asBlock: (bw: BoundWitness) => WithBlock;
37
- type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>;
38
- type AnyBoundWitness = BoundWitness<JsonObject>;
39
-
40
- declare const BoundWitnessJsonSchema: () => {
41
- $id: string;
42
- additionalProperties: boolean;
43
- properties: {
44
- addresses: {
45
- items: {
46
- type: string;
47
- };
48
- type: string;
49
- };
50
- payload_hashes: {
51
- items: {
52
- type: string;
53
- };
54
- type: string;
55
- };
56
- payload_schemas: {
57
- items: {
58
- type: string;
59
- };
60
- type: string;
61
- };
62
- previous_hashes: {
63
- items: {
64
- nullable: boolean;
65
- type: string;
66
- };
67
- type: string;
68
- };
69
- schema: {
70
- type: string;
71
- };
72
- };
73
- required: string[];
74
- type: string;
75
- };
76
-
77
- declare const isBoundWitness: (value: unknown) => value is BoundWitness;
78
- declare const notBoundWitness: (x?: unknown | null) => x is BoundWitness;
79
- declare const asBoundWitness: <T extends BoundWitness<{
80
- schema: string;
81
- }> = BoundWitness>(payload?: unknown) => T | undefined;
82
- declare const asOptionalBoundWitness: <TType extends BoundWitness>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
83
- declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
84
- declare const asBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
85
- declare const asOptionalBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
86
- declare const isUnsignedBoundWitness: (value: unknown) => value is UnsignedBoundWitness;
87
-
88
- type QueryBoundWitnessFields = {
89
- error_hashes?: Hash[];
90
- query: Hash;
91
- };
92
- type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>;
93
- type QueryBoundWitness = UnsignedQueryBoundWitness;
94
- declare const isQueryBoundWitness: (x?: unknown) => x is QueryBoundWitness;
95
- declare const isQueryBoundWitnessWithStorageMeta: (x?: unknown) => x is WithStorageMeta<QueryBoundWitness>;
96
-
97
- export { type AnyBoundWitness, type BoundWitness, type BoundWitnessBlockField, type BoundWitnessChainField, type BoundWitnessFields, BoundWitnessJsonSchema, type BoundWitnessMeta, type BoundWitnessOptionalFields, type BoundWitnessRequiredFields, BoundWitnessSchema, type QueryBoundWitness, type QueryBoundWitnessFields, type Signed, type UnsignedBoundWitness, type UnsignedQueryBoundWitness, type WithBlock, asBlock, asBoundWitness, asBoundWitnessWithStorageMeta, asOptionalBoundWitness, asOptionalBoundWitnessWithStorageMeta, hasBlock, isBoundWitness, isBoundWitnessWithStorageMeta, isQueryBoundWitness, isQueryBoundWitnessWithStorageMeta, isUnsignedBoundWitness, notBoundWitness };
1
+ export * from './BoundWitness/index.ts';
2
+ export * from './isBoundWitness.ts';
3
+ export * from './QueryBoundWitness.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/BoundWitness/BoundWitness.ts","../../src/BoundWitness/BoundWitnessJsonSchema.ts","../../src/BoundWitness/BoundWitnessSchema.ts","../../src/isBoundWitness.ts","../../src/QueryBoundWitness.ts"],"sourcesContent":["import type {\n Address, Hash, Hex,\n} from '@xylabs/hex'\nimport type { EmptyObject, JsonObject } from '@xylabs/object'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\n\nimport type { BoundWitnessSchema } from './BoundWitnessSchema.ts'\n\nexport interface BoundWitnessRequiredFields {\n /** @field Array of signatures by the accounts that are listed in addresses */\n addresses: Address[]\n payload_hashes: Hash[]\n payload_schemas: Schema[]\n previous_hashes: (Hash | null)[]\n}\n\nexport interface BoundWitnessMeta {\n /**\n * @field The address to which the query is directed\n */\n $destination?: Address\n /**\n * @field The query that initiated the bound witness\n */\n $sourceQuery?: Hash\n}\n\nexport interface BoundWitnessBlockField {\n /** @field sequential number (if this boundwitness is part of a multi-party chain) zero padded to 32 characters */\n block: Hex\n}\n\nexport interface BoundWitnessChainField {\n /** @field unique id of a multi-party chain (usually staking contract address) */\n chain: Hex\n}\n\nexport interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {\n root: Hash\n}\n\nexport interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {}\n\nexport type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<\n T extends void ? BoundWitnessFields : BoundWitnessFields & T,\n T extends void ? BoundWitnessSchema\n : T extends Payload ? T['schema']\n : BoundWitnessSchema\n> & BoundWitnessMeta\n\nexport type Signed<T> = T & {\n $signatures: Hex[]\n}\n\nexport type WithBlock = BoundWitness & BoundWitnessBlockField\n\nexport const hasBlock = (bw: BoundWitness): bw is WithBlock => bw.block !== undefined && typeof bw.block === 'string'\nexport const asBlock = (bw: BoundWitness): WithBlock => bw as WithBlock\n\nexport type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>\n\nexport type AnyBoundWitness = BoundWitness<JsonObject>\n","// Should type as JSONSchemaType<BoundWitness> once ajv/eslint issue is fixed\n// https://github.com/microsoft/TypeScript/issues/44851\n\nexport const BoundWitnessJsonSchema = () => {\n return {\n $id: 'https://schemas.xyo.network/2.0/boundwitness',\n additionalProperties: false,\n properties: {\n addresses: { items: { type: 'string' }, type: 'array' },\n payload_hashes: { items: { type: 'string' }, type: 'array' },\n payload_schemas: { items: { type: 'string' }, type: 'array' },\n previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },\n schema: { type: 'string' },\n },\n required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],\n type: 'object',\n }\n}\n","export const BoundWitnessSchema = 'network.xyo.boundwitness' as const\nexport type BoundWitnessSchema = typeof BoundWitnessSchema\n","import { AsObjectFactory } from '@xylabs/object'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport {\n isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,\n} from '@xyo-network/payload-model'\n\nimport type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts'\nimport { BoundWitnessSchema } from './BoundWitness/index.ts'\n\nexport const isBoundWitness = (value: unknown): value is BoundWitness => isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value)\n\nexport const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)\n\n// TODO: Use AsObjectFactory here to match standard pattern\n// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior\nexport const asBoundWitness = <T extends BoundWitness<{ schema: string }> = BoundWitness>(payload?: unknown) =>\n isBoundWitness(payload) ? (payload as T) : undefined\n\nexport const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)\n\nexport const isBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BoundWitness> =>\n isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value) && isStorageMeta(value)\nexport const asBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\nexport const asOptionalBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\n\nexport const isUnsignedBoundWitness = (value: unknown): value is UnsignedBoundWitness =>\n isPayloadOfSchemaType<UnsignedBoundWitness>(BoundWitnessSchema)(value)\n","import type { Hash } from '@xylabs/hex'\nimport { isStorageMeta, type WithStorageMeta } from '@xyo-network/payload-model'\n\nimport type { BoundWitness } from './BoundWitness/index.ts'\nimport { isBoundWitness } from './isBoundWitness.ts'\n\nexport type QueryBoundWitnessFields = {\n error_hashes?: Hash[]\n query: Hash\n}\n\nexport type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>\n\n// eslint-disable-next-line sonarjs/redundant-type-aliases\nexport type QueryBoundWitness = UnsignedQueryBoundWitness\n\nexport const isQueryBoundWitness = (x?: unknown): x is QueryBoundWitness => isBoundWitness(x) && (x as QueryBoundWitness)?.query !== undefined\nexport const isQueryBoundWitnessWithStorageMeta = (x?: unknown): x is WithStorageMeta<QueryBoundWitness> => isQueryBoundWitness(x) && isStorageMeta(x)\n"],"mappings":";AAwDO,IAAM,WAAW,CAAC,OAAsC,GAAG,UAAU,UAAa,OAAO,GAAG,UAAU;AACtG,IAAM,UAAU,CAAC,OAAgC;;;ACtDjD,IAAM,yBAAyB,MAAM;AAC1C,SAAO;AAAA,IACL,KAAK;AAAA,IACL,sBAAsB;AAAA,IACtB,YAAY;AAAA,MACV,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MACtD,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC3D,iBAAiB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5D,iBAAiB,EAAE,OAAO,EAAE,UAAU,MAAM,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5E,QAAQ,EAAE,MAAM,SAAS;AAAA,IAC3B;AAAA,IACA,UAAU,CAAC,aAAa,kBAAkB,mBAAmB,mBAAmB,QAAQ;AAAA,IACxF,MAAM;AAAA,EACR;AACF;;;ACjBO,IAAM,qBAAqB;;;ACAlC,SAAS,uBAAuB;AAEhC;AAAA,EACE;AAAA,EAAuB;AAAA,EAAe;AAAA,OACjC;AAKA,IAAM,iBAAiB,CAAC,UAA0C,sBAAoC,kBAAkB,EAAE,KAAK;AAE/H,IAAM,kBAAkB,uBAAqC,kBAAkB;AAI/E,IAAM,iBAAiB,CAA4D,YACxF,eAAe,OAAO,IAAK,UAAgB;AAEtC,IAAM,yBAAyB,gBAAgB,eAA6B,cAAc;AAE1F,IAAM,gCAAgC,CAAC,UAC5C,sBAAoC,kBAAkB,EAAE,KAAK,KAAK,cAAc,KAAK;AAChF,IAAM,gCAAgC,gBAAgB,eAA8C,6BAA6B;AACjI,IAAM,wCAAwC,gBAAgB,eAA8C,6BAA6B;AAEzI,IAAM,yBAAyB,CAAC,UACrC,sBAA4C,kBAAkB,EAAE,KAAK;;;ACzBvE,SAAS,iBAAAA,sBAA2C;AAe7C,IAAM,sBAAsB,CAAC,MAAwC,eAAe,CAAC,KAAM,GAAyB,UAAU;AAC9H,IAAM,qCAAqC,CAAC,MAAyD,oBAAoB,CAAC,KAAKC,eAAc,CAAC;","names":["isStorageMeta","isStorageMeta"]}
1
+ {"version":3,"sources":["../../src/BoundWitness/BoundWitness.ts","../../src/BoundWitness/BoundWitnessJsonSchema.ts","../../src/BoundWitness/BoundWitnessSchema.ts","../../src/isBoundWitness.ts","../../src/QueryBoundWitness.ts"],"sourcesContent":["import type {\n Address, Hash, Hex,\n} from '@xylabs/hex'\nimport type { EmptyObject, JsonObject } from '@xylabs/object'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\n\nimport type { BoundWitnessSchema } from './BoundWitnessSchema.ts'\n\nexport interface BoundWitnessRequiredFields {\n /** @field Array of signatures by the accounts that are listed in addresses */\n addresses: Address[]\n payload_hashes: Hash[]\n payload_schemas: Schema[]\n previous_hashes: (Hash | null)[]\n}\n\nexport interface BoundWitnessMeta {\n /**\n * @field The address to which the query is directed\n */\n $destination?: Address\n /**\n * @field The query that initiated the bound witness\n */\n $sourceQuery?: Hash\n}\n\nexport interface BoundWitnessBlockField {\n /** @field sequential number (if this boundwitness is part of a multi-party chain) */\n block: number\n}\n\nexport interface BoundWitnessChainField {\n /** @field unique id of a multi-party chain (usually staking contract address) */\n chain: Hex\n}\n\nexport interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {\n root: Hash\n}\n\nexport interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {}\n\nexport type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<\n T extends void ? BoundWitnessFields : BoundWitnessFields & T,\n T extends void ? BoundWitnessSchema\n : T extends Payload ? T['schema']\n : BoundWitnessSchema\n> & BoundWitnessMeta\n\nexport type Signed<T> = T & {\n $signatures: Hex[]\n}\n\nexport type WithBlock = BoundWitness & BoundWitnessBlockField\n\nexport const hasBlock = (bw: BoundWitness): bw is WithBlock => bw.block !== undefined && typeof bw.block === 'string'\nexport const asBlock = (bw: BoundWitness): WithBlock => bw as WithBlock\n\nexport type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>\n\nexport type AnyBoundWitness = BoundWitness<JsonObject>\n","// Should type as JSONSchemaType<BoundWitness> once ajv/eslint issue is fixed\n// https://github.com/microsoft/TypeScript/issues/44851\n\nexport const BoundWitnessJsonSchema = () => {\n return {\n $id: 'https://schemas.xyo.network/2.0/boundwitness',\n additionalProperties: false,\n properties: {\n addresses: { items: { type: 'string' }, type: 'array' },\n payload_hashes: { items: { type: 'string' }, type: 'array' },\n payload_schemas: { items: { type: 'string' }, type: 'array' },\n previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },\n schema: { type: 'string' },\n },\n required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],\n type: 'object',\n }\n}\n","export const BoundWitnessSchema = 'network.xyo.boundwitness' as const\nexport type BoundWitnessSchema = typeof BoundWitnessSchema\n","import { AsObjectFactory } from '@xylabs/object'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport {\n isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,\n} from '@xyo-network/payload-model'\n\nimport type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts'\nimport { BoundWitnessSchema } from './BoundWitness/index.ts'\n\nexport const isBoundWitness = (value: unknown): value is BoundWitness => isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value)\n\nexport const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)\n\n// TODO: Use AsObjectFactory here to match standard pattern\n// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior\nexport const asBoundWitness = <T extends BoundWitness<{ schema: string }> = BoundWitness>(payload?: unknown) =>\n isBoundWitness(payload) ? (payload as T) : undefined\n\nexport const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)\n\nexport const isBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BoundWitness> =>\n isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value) && isStorageMeta(value)\nexport const asBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\nexport const asOptionalBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\n\nexport const isUnsignedBoundWitness = (value: unknown): value is UnsignedBoundWitness =>\n isPayloadOfSchemaType<UnsignedBoundWitness>(BoundWitnessSchema)(value)\n","import type { Hash } from '@xylabs/hex'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport { isStorageMeta } from '@xyo-network/payload-model'\n\nimport type { BoundWitness } from './BoundWitness/index.ts'\nimport { isBoundWitness } from './isBoundWitness.ts'\n\nexport type QueryBoundWitnessFields = {\n error_hashes?: Hash[]\n query: Hash\n}\n\nexport type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>\n\n// eslint-disable-next-line sonarjs/redundant-type-aliases\nexport type QueryBoundWitness = UnsignedQueryBoundWitness\n\nexport const isQueryBoundWitness = (x?: unknown): x is QueryBoundWitness => isBoundWitness(x) && (x as QueryBoundWitness)?.query !== undefined\nexport const isQueryBoundWitnessWithStorageMeta = (x?: unknown): x is WithStorageMeta<QueryBoundWitness> => isQueryBoundWitness(x) && isStorageMeta(x)\n"],"mappings":";AAwDO,IAAM,WAAW,CAAC,OAAsC,GAAG,UAAU,UAAa,OAAO,GAAG,UAAU;AACtG,IAAM,UAAU,CAAC,OAAgC;;;ACtDjD,IAAM,yBAAyB,MAAM;AAC1C,SAAO;AAAA,IACL,KAAK;AAAA,IACL,sBAAsB;AAAA,IACtB,YAAY;AAAA,MACV,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MACtD,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC3D,iBAAiB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5D,iBAAiB,EAAE,OAAO,EAAE,UAAU,MAAM,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5E,QAAQ,EAAE,MAAM,SAAS;AAAA,IAC3B;AAAA,IACA,UAAU,CAAC,aAAa,kBAAkB,mBAAmB,mBAAmB,QAAQ;AAAA,IACxF,MAAM;AAAA,EACR;AACF;;;ACjBO,IAAM,qBAAqB;;;ACAlC,SAAS,uBAAuB;AAEhC;AAAA,EACE;AAAA,EAAuB;AAAA,EAAe;AAAA,OACjC;AAKA,IAAM,iBAAiB,CAAC,UAA0C,sBAAoC,kBAAkB,EAAE,KAAK;AAE/H,IAAM,kBAAkB,uBAAqC,kBAAkB;AAI/E,IAAM,iBAAiB,CAA4D,YACxF,eAAe,OAAO,IAAK,UAAgB;AAEtC,IAAM,yBAAyB,gBAAgB,eAA6B,cAAc;AAE1F,IAAM,gCAAgC,CAAC,UAC5C,sBAAoC,kBAAkB,EAAE,KAAK,KAAK,cAAc,KAAK;AAChF,IAAM,gCAAgC,gBAAgB,eAA8C,6BAA6B;AACjI,IAAM,wCAAwC,gBAAgB,eAA8C,6BAA6B;AAEzI,IAAM,yBAAyB,CAAC,UACrC,sBAA4C,kBAAkB,EAAE,KAAK;;;ACxBvE,SAAS,iBAAAA,sBAAqB;AAevB,IAAM,sBAAsB,CAAC,MAAwC,eAAe,CAAC,KAAM,GAAyB,UAAU;AAC9H,IAAM,qCAAqC,CAAC,MAAyD,oBAAoB,CAAC,KAAKC,eAAc,CAAC;","names":["isStorageMeta","isStorageMeta"]}
@@ -0,0 +1,13 @@
1
+ import type { WithStorageMeta } from '@xyo-network/payload-model';
2
+ import type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts';
3
+ export declare const isBoundWitness: (value: unknown) => value is BoundWitness;
4
+ export declare const notBoundWitness: (x?: unknown | null) => x is BoundWitness;
5
+ export declare const asBoundWitness: <T extends BoundWitness<{
6
+ schema: string;
7
+ }> = BoundWitness>(payload?: unknown) => T | undefined;
8
+ export declare const asOptionalBoundWitness: <TType extends BoundWitness>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
9
+ export declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
10
+ export declare const asBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
11
+ export declare const asOptionalBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
12
+ export declare const isUnsignedBoundWitness: (value: unknown) => value is UnsignedBoundWitness;
13
+ //# sourceMappingURL=isBoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isBoundWitness.d.ts","sourceRoot":"","sources":["../../src/isBoundWitness.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAKjE,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAGjF,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAA8E,CAAA;AAEvI,eAAO,MAAM,eAAe,2CAA2D,CAAA;AAIvF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,YAAY,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,YAAY,EAAE,UAAU,OAAO,kBACrD,CAAA;AAEtD,eAAO,MAAM,sBAAsB,6CAJpB,qDAAiB,qCAIkE,CAAA;AAElG,eAAO,MAAM,6BAA6B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,eAAe,CAAC,YAAY,CACZ,CAAA;AACxF,eAAO,MAAM,6BAA6B,8DAR3B,qDAAiB,qCAQyG,CAAA;AACzI,eAAO,MAAM,qCAAqC,8DATnC,qDAAiB,qCASiH,CAAA;AAEjJ,eAAO,MAAM,sBAAsB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,oBACO,CAAA"}
@@ -0,0 +1,44 @@
1
+ import type { Address, Hash, Hex } from '@xylabs/hex';
2
+ import type { EmptyObject, JsonObject } from '@xylabs/object';
3
+ import type { Payload, Schema } from '@xyo-network/payload-model';
4
+ import type { BoundWitnessSchema } from './BoundWitnessSchema.ts';
5
+ export interface BoundWitnessRequiredFields {
6
+ /** @field Array of signatures by the accounts that are listed in addresses */
7
+ addresses: Address[];
8
+ payload_hashes: Hash[];
9
+ payload_schemas: Schema[];
10
+ previous_hashes: (Hash | null)[];
11
+ }
12
+ export interface BoundWitnessMeta {
13
+ /**
14
+ * @field The address to which the query is directed
15
+ */
16
+ $destination?: Address;
17
+ /**
18
+ * @field The query that initiated the bound witness
19
+ */
20
+ $sourceQuery?: Hash;
21
+ }
22
+ export interface BoundWitnessBlockField {
23
+ /** @field sequential number (if this boundwitness is part of a multi-party chain) */
24
+ block: number;
25
+ }
26
+ export interface BoundWitnessChainField {
27
+ /** @field unique id of a multi-party chain (usually staking contract address) */
28
+ chain: Hex;
29
+ }
30
+ export interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {
31
+ root: Hash;
32
+ }
33
+ export interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {
34
+ }
35
+ export type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<T extends void ? BoundWitnessFields : BoundWitnessFields & T, T extends void ? BoundWitnessSchema : T extends Payload ? T['schema'] : BoundWitnessSchema> & BoundWitnessMeta;
36
+ export type Signed<T> = T & {
37
+ $signatures: Hex[];
38
+ };
39
+ export type WithBlock = BoundWitness & BoundWitnessBlockField;
40
+ export declare const hasBlock: (bw: BoundWitness) => bw is WithBlock;
41
+ export declare const asBlock: (bw: BoundWitness) => WithBlock;
42
+ export type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>;
43
+ export type AnyBoundWitness = BoundWitness<JsonObject>;
44
+ //# sourceMappingURL=BoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitness.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EAAE,IAAI,EAAE,GAAG,EACnB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAEjE,MAAM,WAAW,0BAA0B;IACzC,8EAA8E;IAC9E,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,cAAc,EAAE,IAAI,EAAE,CAAA;IACtB,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,eAAe,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAA;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,iFAAiF;IACjF,KAAK,EAAE,GAAG,CAAA;CACX;AAED,MAAM,WAAW,0BAA2B,SAAQ,OAAO,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC;IAClH,IAAI,EAAE,IAAI,CAAA;CACX;AAED,MAAM,WAAW,kBAAmB,SAAQ,0BAA0B,EAAE,OAAO,CAAC,0BAA0B,CAAC;CAAG;AAE9G,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,OAAO,CACvF,CAAC,SAAS,IAAI,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,CAAC,EAC5D,CAAC,SAAS,IAAI,GAAG,kBAAkB,GAC/B,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,GAC7B,kBAAkB,CACzB,GAAG,gBAAgB,CAAA;AAEpB,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG;IAC1B,WAAW,EAAE,GAAG,EAAE,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,sBAAsB,CAAA;AAE7D,eAAO,MAAM,QAAQ,GAAI,IAAI,YAAY,KAAG,EAAE,IAAI,SAAmE,CAAA;AACrH,eAAO,MAAM,OAAO,GAAI,IAAI,YAAY,KAAG,SAA4B,CAAA;AAEvE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,IAAI,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzG,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,CAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ export declare const BoundWitnessJsonSchema: () => {
2
+ $id: string;
3
+ additionalProperties: boolean;
4
+ properties: {
5
+ addresses: {
6
+ items: {
7
+ type: string;
8
+ };
9
+ type: string;
10
+ };
11
+ payload_hashes: {
12
+ items: {
13
+ type: string;
14
+ };
15
+ type: string;
16
+ };
17
+ payload_schemas: {
18
+ items: {
19
+ type: string;
20
+ };
21
+ type: string;
22
+ };
23
+ previous_hashes: {
24
+ items: {
25
+ nullable: boolean;
26
+ type: string;
27
+ };
28
+ type: string;
29
+ };
30
+ schema: {
31
+ type: string;
32
+ };
33
+ };
34
+ required: string[];
35
+ type: string;
36
+ };
37
+ //# sourceMappingURL=BoundWitnessJsonSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitnessJsonSchema.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitnessJsonSchema.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAclC,CAAA"}
@@ -0,0 +1,3 @@
1
+ export declare const BoundWitnessSchema: "network.xyo.boundwitness";
2
+ export type BoundWitnessSchema = typeof BoundWitnessSchema;
3
+ //# sourceMappingURL=BoundWitnessSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoundWitnessSchema.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/BoundWitnessSchema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,EAAG,0BAAmC,CAAA;AACrE,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './BoundWitness.ts';
2
+ export * from './BoundWitnessJsonSchema.ts';
3
+ export * from './BoundWitnessSchema.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/BoundWitness/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { Hash } from '@xylabs/hex';
2
+ import type { WithStorageMeta } from '@xyo-network/payload-model';
3
+ import type { BoundWitness } from './BoundWitness/index.ts';
4
+ export type QueryBoundWitnessFields = {
5
+ error_hashes?: Hash[];
6
+ query: Hash;
7
+ };
8
+ export type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>;
9
+ export type QueryBoundWitness = UnsignedQueryBoundWitness;
10
+ export declare const isQueryBoundWitness: (x?: unknown) => x is QueryBoundWitness;
11
+ export declare const isQueryBoundWitnessWithStorageMeta: (x?: unknown) => x is WithStorageMeta<QueryBoundWitness>;
12
+ //# sourceMappingURL=QueryBoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryBoundWitness.d.ts","sourceRoot":"","sources":["../../src/QueryBoundWitness.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAG3D,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;IACrB,KAAK,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC,uBAAuB,CAAC,CAAA;AAG7E,MAAM,MAAM,iBAAiB,GAAG,yBAAyB,CAAA;AAEzD,eAAO,MAAM,mBAAmB,GAAI,IAAI,OAAO,KAAG,CAAC,IAAI,iBAAuF,CAAA;AAC9I,eAAO,MAAM,kCAAkC,GAAI,IAAI,OAAO,KAAG,CAAC,IAAI,eAAe,CAAC,iBAAiB,CAA+C,CAAA"}
@@ -1,97 +1,4 @@
1
- import { Address, Hash, Hex } from '@xylabs/hex';
2
- import { EmptyObject, JsonObject } from '@xylabs/object';
3
- import { Schema, Payload, WithStorageMeta } from '@xyo-network/payload-model';
4
- import * as _store__xylabs_promise_npm_4_5_1_97d36b712b_package from '.store/@xylabs-promise-npm-4.5.1-97d36b712b/package';
5
-
6
- declare const BoundWitnessSchema: "network.xyo.boundwitness";
7
- type BoundWitnessSchema = typeof BoundWitnessSchema;
8
-
9
- interface BoundWitnessRequiredFields {
10
- addresses: Address[];
11
- payload_hashes: Hash[];
12
- payload_schemas: Schema[];
13
- previous_hashes: (Hash | null)[];
14
- }
15
- interface BoundWitnessMeta {
16
- $destination?: Address;
17
- $sourceQuery?: Hash;
18
- }
19
- interface BoundWitnessBlockField {
20
- block: Hex;
21
- }
22
- interface BoundWitnessChainField {
23
- chain: Hex;
24
- }
25
- interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {
26
- root: Hash;
27
- }
28
- interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {
29
- }
30
- type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<T extends void ? BoundWitnessFields : BoundWitnessFields & T, T extends void ? BoundWitnessSchema : T extends Payload ? T['schema'] : BoundWitnessSchema> & BoundWitnessMeta;
31
- type Signed<T> = T & {
32
- $signatures: Hex[];
33
- };
34
- type WithBlock = BoundWitness & BoundWitnessBlockField;
35
- declare const hasBlock: (bw: BoundWitness) => bw is WithBlock;
36
- declare const asBlock: (bw: BoundWitness) => WithBlock;
37
- type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>;
38
- type AnyBoundWitness = BoundWitness<JsonObject>;
39
-
40
- declare const BoundWitnessJsonSchema: () => {
41
- $id: string;
42
- additionalProperties: boolean;
43
- properties: {
44
- addresses: {
45
- items: {
46
- type: string;
47
- };
48
- type: string;
49
- };
50
- payload_hashes: {
51
- items: {
52
- type: string;
53
- };
54
- type: string;
55
- };
56
- payload_schemas: {
57
- items: {
58
- type: string;
59
- };
60
- type: string;
61
- };
62
- previous_hashes: {
63
- items: {
64
- nullable: boolean;
65
- type: string;
66
- };
67
- type: string;
68
- };
69
- schema: {
70
- type: string;
71
- };
72
- };
73
- required: string[];
74
- type: string;
75
- };
76
-
77
- declare const isBoundWitness: (value: unknown) => value is BoundWitness;
78
- declare const notBoundWitness: (x?: unknown | null) => x is BoundWitness;
79
- declare const asBoundWitness: <T extends BoundWitness<{
80
- schema: string;
81
- }> = BoundWitness>(payload?: unknown) => T | undefined;
82
- declare const asOptionalBoundWitness: <TType extends BoundWitness>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
83
- declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
84
- declare const asBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
85
- declare const asOptionalBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: _store__xylabs_promise_npm_4_5_1_97d36b712b_package.AnyNonPromise) => TType | undefined;
86
- declare const isUnsignedBoundWitness: (value: unknown) => value is UnsignedBoundWitness;
87
-
88
- type QueryBoundWitnessFields = {
89
- error_hashes?: Hash[];
90
- query: Hash;
91
- };
92
- type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>;
93
- type QueryBoundWitness = UnsignedQueryBoundWitness;
94
- declare const isQueryBoundWitness: (x?: unknown) => x is QueryBoundWitness;
95
- declare const isQueryBoundWitnessWithStorageMeta: (x?: unknown) => x is WithStorageMeta<QueryBoundWitness>;
96
-
97
- export { type AnyBoundWitness, type BoundWitness, type BoundWitnessBlockField, type BoundWitnessChainField, type BoundWitnessFields, BoundWitnessJsonSchema, type BoundWitnessMeta, type BoundWitnessOptionalFields, type BoundWitnessRequiredFields, BoundWitnessSchema, type QueryBoundWitness, type QueryBoundWitnessFields, type Signed, type UnsignedBoundWitness, type UnsignedQueryBoundWitness, type WithBlock, asBlock, asBoundWitness, asBoundWitnessWithStorageMeta, asOptionalBoundWitness, asOptionalBoundWitnessWithStorageMeta, hasBlock, isBoundWitness, isBoundWitnessWithStorageMeta, isQueryBoundWitness, isQueryBoundWitnessWithStorageMeta, isUnsignedBoundWitness, notBoundWitness };
1
+ export * from './BoundWitness/index.ts';
2
+ export * from './isBoundWitness.ts';
3
+ export * from './QueryBoundWitness.ts';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/BoundWitness/BoundWitness.ts","../../src/BoundWitness/BoundWitnessJsonSchema.ts","../../src/BoundWitness/BoundWitnessSchema.ts","../../src/isBoundWitness.ts","../../src/QueryBoundWitness.ts"],"sourcesContent":["import type {\n Address, Hash, Hex,\n} from '@xylabs/hex'\nimport type { EmptyObject, JsonObject } from '@xylabs/object'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\n\nimport type { BoundWitnessSchema } from './BoundWitnessSchema.ts'\n\nexport interface BoundWitnessRequiredFields {\n /** @field Array of signatures by the accounts that are listed in addresses */\n addresses: Address[]\n payload_hashes: Hash[]\n payload_schemas: Schema[]\n previous_hashes: (Hash | null)[]\n}\n\nexport interface BoundWitnessMeta {\n /**\n * @field The address to which the query is directed\n */\n $destination?: Address\n /**\n * @field The query that initiated the bound witness\n */\n $sourceQuery?: Hash\n}\n\nexport interface BoundWitnessBlockField {\n /** @field sequential number (if this boundwitness is part of a multi-party chain) zero padded to 32 characters */\n block: Hex\n}\n\nexport interface BoundWitnessChainField {\n /** @field unique id of a multi-party chain (usually staking contract address) */\n chain: Hex\n}\n\nexport interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {\n root: Hash\n}\n\nexport interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {}\n\nexport type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<\n T extends void ? BoundWitnessFields : BoundWitnessFields & T,\n T extends void ? BoundWitnessSchema\n : T extends Payload ? T['schema']\n : BoundWitnessSchema\n> & BoundWitnessMeta\n\nexport type Signed<T> = T & {\n $signatures: Hex[]\n}\n\nexport type WithBlock = BoundWitness & BoundWitnessBlockField\n\nexport const hasBlock = (bw: BoundWitness): bw is WithBlock => bw.block !== undefined && typeof bw.block === 'string'\nexport const asBlock = (bw: BoundWitness): WithBlock => bw as WithBlock\n\nexport type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>\n\nexport type AnyBoundWitness = BoundWitness<JsonObject>\n","// Should type as JSONSchemaType<BoundWitness> once ajv/eslint issue is fixed\n// https://github.com/microsoft/TypeScript/issues/44851\n\nexport const BoundWitnessJsonSchema = () => {\n return {\n $id: 'https://schemas.xyo.network/2.0/boundwitness',\n additionalProperties: false,\n properties: {\n addresses: { items: { type: 'string' }, type: 'array' },\n payload_hashes: { items: { type: 'string' }, type: 'array' },\n payload_schemas: { items: { type: 'string' }, type: 'array' },\n previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },\n schema: { type: 'string' },\n },\n required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],\n type: 'object',\n }\n}\n","export const BoundWitnessSchema = 'network.xyo.boundwitness' as const\nexport type BoundWitnessSchema = typeof BoundWitnessSchema\n","import { AsObjectFactory } from '@xylabs/object'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport {\n isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,\n} from '@xyo-network/payload-model'\n\nimport type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts'\nimport { BoundWitnessSchema } from './BoundWitness/index.ts'\n\nexport const isBoundWitness = (value: unknown): value is BoundWitness => isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value)\n\nexport const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)\n\n// TODO: Use AsObjectFactory here to match standard pattern\n// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior\nexport const asBoundWitness = <T extends BoundWitness<{ schema: string }> = BoundWitness>(payload?: unknown) =>\n isBoundWitness(payload) ? (payload as T) : undefined\n\nexport const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)\n\nexport const isBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BoundWitness> =>\n isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value) && isStorageMeta(value)\nexport const asBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\nexport const asOptionalBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\n\nexport const isUnsignedBoundWitness = (value: unknown): value is UnsignedBoundWitness =>\n isPayloadOfSchemaType<UnsignedBoundWitness>(BoundWitnessSchema)(value)\n","import type { Hash } from '@xylabs/hex'\nimport { isStorageMeta, type WithStorageMeta } from '@xyo-network/payload-model'\n\nimport type { BoundWitness } from './BoundWitness/index.ts'\nimport { isBoundWitness } from './isBoundWitness.ts'\n\nexport type QueryBoundWitnessFields = {\n error_hashes?: Hash[]\n query: Hash\n}\n\nexport type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>\n\n// eslint-disable-next-line sonarjs/redundant-type-aliases\nexport type QueryBoundWitness = UnsignedQueryBoundWitness\n\nexport const isQueryBoundWitness = (x?: unknown): x is QueryBoundWitness => isBoundWitness(x) && (x as QueryBoundWitness)?.query !== undefined\nexport const isQueryBoundWitnessWithStorageMeta = (x?: unknown): x is WithStorageMeta<QueryBoundWitness> => isQueryBoundWitness(x) && isStorageMeta(x)\n"],"mappings":";AAwDO,IAAM,WAAW,CAAC,OAAsC,GAAG,UAAU,UAAa,OAAO,GAAG,UAAU;AACtG,IAAM,UAAU,CAAC,OAAgC;;;ACtDjD,IAAM,yBAAyB,MAAM;AAC1C,SAAO;AAAA,IACL,KAAK;AAAA,IACL,sBAAsB;AAAA,IACtB,YAAY;AAAA,MACV,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MACtD,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC3D,iBAAiB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5D,iBAAiB,EAAE,OAAO,EAAE,UAAU,MAAM,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5E,QAAQ,EAAE,MAAM,SAAS;AAAA,IAC3B;AAAA,IACA,UAAU,CAAC,aAAa,kBAAkB,mBAAmB,mBAAmB,QAAQ;AAAA,IACxF,MAAM;AAAA,EACR;AACF;;;ACjBO,IAAM,qBAAqB;;;ACAlC,SAAS,uBAAuB;AAEhC;AAAA,EACE;AAAA,EAAuB;AAAA,EAAe;AAAA,OACjC;AAKA,IAAM,iBAAiB,CAAC,UAA0C,sBAAoC,kBAAkB,EAAE,KAAK;AAE/H,IAAM,kBAAkB,uBAAqC,kBAAkB;AAI/E,IAAM,iBAAiB,CAA4D,YACxF,eAAe,OAAO,IAAK,UAAgB;AAEtC,IAAM,yBAAyB,gBAAgB,eAA6B,cAAc;AAE1F,IAAM,gCAAgC,CAAC,UAC5C,sBAAoC,kBAAkB,EAAE,KAAK,KAAK,cAAc,KAAK;AAChF,IAAM,gCAAgC,gBAAgB,eAA8C,6BAA6B;AACjI,IAAM,wCAAwC,gBAAgB,eAA8C,6BAA6B;AAEzI,IAAM,yBAAyB,CAAC,UACrC,sBAA4C,kBAAkB,EAAE,KAAK;;;ACzBvE,SAAS,iBAAAA,sBAA2C;AAe7C,IAAM,sBAAsB,CAAC,MAAwC,eAAe,CAAC,KAAM,GAAyB,UAAU;AAC9H,IAAM,qCAAqC,CAAC,MAAyD,oBAAoB,CAAC,KAAKC,eAAc,CAAC;","names":["isStorageMeta","isStorageMeta"]}
1
+ {"version":3,"sources":["../../src/BoundWitness/BoundWitness.ts","../../src/BoundWitness/BoundWitnessJsonSchema.ts","../../src/BoundWitness/BoundWitnessSchema.ts","../../src/isBoundWitness.ts","../../src/QueryBoundWitness.ts"],"sourcesContent":["import type {\n Address, Hash, Hex,\n} from '@xylabs/hex'\nimport type { EmptyObject, JsonObject } from '@xylabs/object'\nimport type { Payload, Schema } from '@xyo-network/payload-model'\n\nimport type { BoundWitnessSchema } from './BoundWitnessSchema.ts'\n\nexport interface BoundWitnessRequiredFields {\n /** @field Array of signatures by the accounts that are listed in addresses */\n addresses: Address[]\n payload_hashes: Hash[]\n payload_schemas: Schema[]\n previous_hashes: (Hash | null)[]\n}\n\nexport interface BoundWitnessMeta {\n /**\n * @field The address to which the query is directed\n */\n $destination?: Address\n /**\n * @field The query that initiated the bound witness\n */\n $sourceQuery?: Hash\n}\n\nexport interface BoundWitnessBlockField {\n /** @field sequential number (if this boundwitness is part of a multi-party chain) */\n block: number\n}\n\nexport interface BoundWitnessChainField {\n /** @field unique id of a multi-party chain (usually staking contract address) */\n chain: Hex\n}\n\nexport interface BoundWitnessOptionalFields extends Partial<BoundWitnessBlockField>, Partial<BoundWitnessChainField> {\n root: Hash\n}\n\nexport interface BoundWitnessFields extends BoundWitnessRequiredFields, Partial<BoundWitnessOptionalFields> {}\n\nexport type UnsignedBoundWitness<T extends Payload | EmptyObject | void = void> = Payload<\n T extends void ? BoundWitnessFields : BoundWitnessFields & T,\n T extends void ? BoundWitnessSchema\n : T extends Payload ? T['schema']\n : BoundWitnessSchema\n> & BoundWitnessMeta\n\nexport type Signed<T> = T & {\n $signatures: Hex[]\n}\n\nexport type WithBlock = BoundWitness & BoundWitnessBlockField\n\nexport const hasBlock = (bw: BoundWitness): bw is WithBlock => bw.block !== undefined && typeof bw.block === 'string'\nexport const asBlock = (bw: BoundWitness): WithBlock => bw as WithBlock\n\nexport type BoundWitness<T extends Payload | EmptyObject | void = void> = Signed<UnsignedBoundWitness<T>>\n\nexport type AnyBoundWitness = BoundWitness<JsonObject>\n","// Should type as JSONSchemaType<BoundWitness> once ajv/eslint issue is fixed\n// https://github.com/microsoft/TypeScript/issues/44851\n\nexport const BoundWitnessJsonSchema = () => {\n return {\n $id: 'https://schemas.xyo.network/2.0/boundwitness',\n additionalProperties: false,\n properties: {\n addresses: { items: { type: 'string' }, type: 'array' },\n payload_hashes: { items: { type: 'string' }, type: 'array' },\n payload_schemas: { items: { type: 'string' }, type: 'array' },\n previous_hashes: { items: { nullable: true, type: 'string' }, type: 'array' },\n schema: { type: 'string' },\n },\n required: ['addresses', 'payload_hashes', 'payload_schemas', 'previous_hashes', 'schema'],\n type: 'object',\n }\n}\n","export const BoundWitnessSchema = 'network.xyo.boundwitness' as const\nexport type BoundWitnessSchema = typeof BoundWitnessSchema\n","import { AsObjectFactory } from '@xylabs/object'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport {\n isPayloadOfSchemaType, isStorageMeta, notPayloadOfSchemaType,\n} from '@xyo-network/payload-model'\n\nimport type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts'\nimport { BoundWitnessSchema } from './BoundWitness/index.ts'\n\nexport const isBoundWitness = (value: unknown): value is BoundWitness => isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value)\n\nexport const notBoundWitness = notPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)\n\n// TODO: Use AsObjectFactory here to match standard pattern\n// TODO: Other as identity functions throw if not valid, this one returns undefined with is more of a asOptional behavior\nexport const asBoundWitness = <T extends BoundWitness<{ schema: string }> = BoundWitness>(payload?: unknown) =>\n isBoundWitness(payload) ? (payload as T) : undefined\n\nexport const asOptionalBoundWitness = AsObjectFactory.createOptional<BoundWitness>(isBoundWitness)\n\nexport const isBoundWitnessWithStorageMeta = (value: unknown): value is WithStorageMeta<BoundWitness> =>\n isPayloadOfSchemaType<BoundWitness>(BoundWitnessSchema)(value) && isStorageMeta(value)\nexport const asBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\nexport const asOptionalBoundWitnessWithStorageMeta = AsObjectFactory.createOptional<WithStorageMeta<BoundWitness>>(isBoundWitnessWithStorageMeta)\n\nexport const isUnsignedBoundWitness = (value: unknown): value is UnsignedBoundWitness =>\n isPayloadOfSchemaType<UnsignedBoundWitness>(BoundWitnessSchema)(value)\n","import type { Hash } from '@xylabs/hex'\nimport type { WithStorageMeta } from '@xyo-network/payload-model'\nimport { isStorageMeta } from '@xyo-network/payload-model'\n\nimport type { BoundWitness } from './BoundWitness/index.ts'\nimport { isBoundWitness } from './isBoundWitness.ts'\n\nexport type QueryBoundWitnessFields = {\n error_hashes?: Hash[]\n query: Hash\n}\n\nexport type UnsignedQueryBoundWitness = BoundWitness<QueryBoundWitnessFields>\n\n// eslint-disable-next-line sonarjs/redundant-type-aliases\nexport type QueryBoundWitness = UnsignedQueryBoundWitness\n\nexport const isQueryBoundWitness = (x?: unknown): x is QueryBoundWitness => isBoundWitness(x) && (x as QueryBoundWitness)?.query !== undefined\nexport const isQueryBoundWitnessWithStorageMeta = (x?: unknown): x is WithStorageMeta<QueryBoundWitness> => isQueryBoundWitness(x) && isStorageMeta(x)\n"],"mappings":";AAwDO,IAAM,WAAW,CAAC,OAAsC,GAAG,UAAU,UAAa,OAAO,GAAG,UAAU;AACtG,IAAM,UAAU,CAAC,OAAgC;;;ACtDjD,IAAM,yBAAyB,MAAM;AAC1C,SAAO;AAAA,IACL,KAAK;AAAA,IACL,sBAAsB;AAAA,IACtB,YAAY;AAAA,MACV,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MACtD,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC3D,iBAAiB,EAAE,OAAO,EAAE,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5D,iBAAiB,EAAE,OAAO,EAAE,UAAU,MAAM,MAAM,SAAS,GAAG,MAAM,QAAQ;AAAA,MAC5E,QAAQ,EAAE,MAAM,SAAS;AAAA,IAC3B;AAAA,IACA,UAAU,CAAC,aAAa,kBAAkB,mBAAmB,mBAAmB,QAAQ;AAAA,IACxF,MAAM;AAAA,EACR;AACF;;;ACjBO,IAAM,qBAAqB;;;ACAlC,SAAS,uBAAuB;AAEhC;AAAA,EACE;AAAA,EAAuB;AAAA,EAAe;AAAA,OACjC;AAKA,IAAM,iBAAiB,CAAC,UAA0C,sBAAoC,kBAAkB,EAAE,KAAK;AAE/H,IAAM,kBAAkB,uBAAqC,kBAAkB;AAI/E,IAAM,iBAAiB,CAA4D,YACxF,eAAe,OAAO,IAAK,UAAgB;AAEtC,IAAM,yBAAyB,gBAAgB,eAA6B,cAAc;AAE1F,IAAM,gCAAgC,CAAC,UAC5C,sBAAoC,kBAAkB,EAAE,KAAK,KAAK,cAAc,KAAK;AAChF,IAAM,gCAAgC,gBAAgB,eAA8C,6BAA6B;AACjI,IAAM,wCAAwC,gBAAgB,eAA8C,6BAA6B;AAEzI,IAAM,yBAAyB,CAAC,UACrC,sBAA4C,kBAAkB,EAAE,KAAK;;;ACxBvE,SAAS,iBAAAA,sBAAqB;AAevB,IAAM,sBAAsB,CAAC,MAAwC,eAAe,CAAC,KAAM,GAAyB,UAAU;AAC9H,IAAM,qCAAqC,CAAC,MAAyD,oBAAoB,CAAC,KAAKC,eAAc,CAAC;","names":["isStorageMeta","isStorageMeta"]}
@@ -0,0 +1,13 @@
1
+ import type { WithStorageMeta } from '@xyo-network/payload-model';
2
+ import type { BoundWitness, UnsignedBoundWitness } from './BoundWitness/index.ts';
3
+ export declare const isBoundWitness: (value: unknown) => value is BoundWitness;
4
+ export declare const notBoundWitness: (x?: unknown | null) => x is BoundWitness;
5
+ export declare const asBoundWitness: <T extends BoundWitness<{
6
+ schema: string;
7
+ }> = BoundWitness>(payload?: unknown) => T | undefined;
8
+ export declare const asOptionalBoundWitness: <TType extends BoundWitness>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
9
+ export declare const isBoundWitnessWithStorageMeta: (value: unknown) => value is WithStorageMeta<BoundWitness>;
10
+ export declare const asBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
11
+ export declare const asOptionalBoundWitnessWithStorageMeta: <TType extends WithStorageMeta<BoundWitness>>(value: import(".store/@xylabs-promise-npm-4.5.1-97d36b712b/package").AnyNonPromise) => TType | undefined;
12
+ export declare const isUnsignedBoundWitness: (value: unknown) => value is UnsignedBoundWitness;
13
+ //# sourceMappingURL=isBoundWitness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isBoundWitness.d.ts","sourceRoot":"","sources":["../../src/isBoundWitness.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAKjE,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAGjF,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,YAA8E,CAAA;AAEvI,eAAO,MAAM,eAAe,2CAA2D,CAAA;AAIvF,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,YAAY,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,YAAY,EAAE,UAAU,OAAO,kBACrD,CAAA;AAEtD,eAAO,MAAM,sBAAsB,6CAJpB,qDAAiB,qCAIkE,CAAA;AAElG,eAAO,MAAM,6BAA6B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,eAAe,CAAC,YAAY,CACZ,CAAA;AACxF,eAAO,MAAM,6BAA6B,8DAR3B,qDAAiB,qCAQyG,CAAA;AACzI,eAAO,MAAM,qCAAqC,8DATnC,qDAAiB,qCASiH,CAAA;AAEjJ,eAAO,MAAM,sBAAsB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,oBACO,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyo-network/boundwitness-model",
3
- "version": "3.9.17",
3
+ "version": "3.9.19",
4
4
  "description": "Primary SDK for using XYO Protocol 2.0",
5
5
  "homepage": "https://xyo.network",
6
6
  "bugs": {
@@ -31,13 +31,13 @@
31
31
  "dependencies": {
32
32
  "@xylabs/hex": "^4.5.1",
33
33
  "@xylabs/object": "^4.5.1",
34
- "@xyo-network/payload-model": "^3.9.17"
34
+ "@xyo-network/payload-model": "^3.9.19"
35
35
  },
36
36
  "devDependencies": {
37
- "@types/node": "^22.13.4",
38
- "@xylabs/ts-scripts-yarn3": "^5.0.24",
39
- "@xylabs/tsconfig": "^5.0.24",
40
- "typescript": "^5.7.3"
37
+ "@types/node": "^22.13.5",
38
+ "@xylabs/ts-scripts-yarn3": "^5.0.39",
39
+ "@xylabs/tsconfig": "^5.0.39",
40
+ "typescript": "^5.8.2"
41
41
  },
42
42
  "publishConfig": {
43
43
  "access": "public"
@@ -26,8 +26,8 @@ export interface BoundWitnessMeta {
26
26
  }
27
27
 
28
28
  export interface BoundWitnessBlockField {
29
- /** @field sequential number (if this boundwitness is part of a multi-party chain) zero padded to 32 characters */
30
- block: Hex
29
+ /** @field sequential number (if this boundwitness is part of a multi-party chain) */
30
+ block: number
31
31
  }
32
32
 
33
33
  export interface BoundWitnessChainField {
@@ -1,5 +1,6 @@
1
1
  import type { Hash } from '@xylabs/hex'
2
- import { isStorageMeta, type WithStorageMeta } from '@xyo-network/payload-model'
2
+ import type { WithStorageMeta } from '@xyo-network/payload-model'
3
+ import { isStorageMeta } from '@xyo-network/payload-model'
3
4
 
4
5
  import type { BoundWitness } from './BoundWitness/index.ts'
5
6
  import { isBoundWitness } from './isBoundWitness.ts'