@requestnetwork/types 0.29.1-next.1351 → 0.29.1-next.709

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 (106) hide show
  1. package/dist/advanced-logic-types.d.ts +24 -1
  2. package/dist/advanced-logic-types.d.ts.map +1 -1
  3. package/dist/client-types.d.ts +33 -2
  4. package/dist/client-types.d.ts.map +1 -1
  5. package/dist/currency-types.d.ts +155 -0
  6. package/dist/currency-types.d.ts.map +1 -0
  7. package/dist/currency-types.js +3 -0
  8. package/dist/currency-types.js.map +1 -0
  9. package/dist/data-access-types.d.ts +36 -26
  10. package/dist/data-access-types.d.ts.map +1 -1
  11. package/dist/data-access-types.js +1 -1
  12. package/dist/data-access-types.js.map +1 -1
  13. package/dist/encryption-types.js +1 -1
  14. package/dist/encryption-types.js.map +1 -1
  15. package/dist/events.d.ts +6 -0
  16. package/dist/events.d.ts.map +1 -0
  17. package/dist/events.js +3 -0
  18. package/dist/events.js.map +1 -0
  19. package/dist/extension-types.d.ts +72 -17
  20. package/dist/extension-types.d.ts.map +1 -1
  21. package/dist/extension-types.js +43 -14
  22. package/dist/extension-types.js.map +1 -1
  23. package/dist/extensions/content-data-types.d.ts +1 -1
  24. package/dist/extensions/content-data-types.d.ts.map +1 -1
  25. package/dist/extensions/content-data-types.js +1 -1
  26. package/dist/extensions/content-data-types.js.map +1 -1
  27. package/dist/extensions/pn-any-address-based-types.d.ts +6 -8
  28. package/dist/extensions/pn-any-address-based-types.d.ts.map +1 -1
  29. package/dist/extensions/pn-any-address-based-types.js +1 -1
  30. package/dist/extensions/pn-any-address-based-types.js.map +1 -1
  31. package/dist/extensions/pn-any-declarative-types.d.ts +20 -5
  32. package/dist/extensions/pn-any-declarative-types.d.ts.map +1 -1
  33. package/dist/extensions/pn-any-declarative-types.js +2 -1
  34. package/dist/extensions/pn-any-declarative-types.js.map +1 -1
  35. package/dist/extensions/pn-any-fee-reference-based-types.d.ts +5 -8
  36. package/dist/extensions/pn-any-fee-reference-based-types.d.ts.map +1 -1
  37. package/dist/extensions/pn-any-fee-reference-based-types.js +3 -1
  38. package/dist/extensions/pn-any-fee-reference-based-types.js.map +1 -1
  39. package/dist/extensions/pn-any-reference-based-types.d.ts +8 -28
  40. package/dist/extensions/pn-any-reference-based-types.d.ts.map +1 -1
  41. package/dist/extensions/pn-any-reference-based-types.js +2 -7
  42. package/dist/extensions/pn-any-reference-based-types.js.map +1 -1
  43. package/dist/extensions/pn-any-stream-reference-based-types.d.ts +16 -0
  44. package/dist/extensions/pn-any-stream-reference-based-types.d.ts.map +1 -0
  45. package/dist/extensions/pn-any-stream-reference-based-types.js +6 -0
  46. package/dist/extensions/pn-any-stream-reference-based-types.js.map +1 -0
  47. package/dist/extensions/pn-any-to-any-conversion-types.d.ts +11 -0
  48. package/dist/extensions/pn-any-to-any-conversion-types.d.ts.map +1 -0
  49. package/dist/extensions/pn-any-to-any-conversion-types.js +3 -0
  50. package/dist/extensions/pn-any-to-any-conversion-types.js.map +1 -0
  51. package/dist/extensions/pn-any-to-erc20-types.d.ts +10 -0
  52. package/dist/extensions/pn-any-to-erc20-types.d.ts.map +1 -0
  53. package/dist/extensions/pn-any-to-erc20-types.js +3 -0
  54. package/dist/extensions/pn-any-to-erc20-types.js.map +1 -0
  55. package/dist/extensions/pn-any-to-eth-types.d.ts +9 -0
  56. package/dist/extensions/pn-any-to-eth-types.d.ts.map +1 -0
  57. package/dist/extensions/pn-any-to-eth-types.js +3 -0
  58. package/dist/extensions/pn-any-to-eth-types.js.map +1 -0
  59. package/dist/extensions/pn-meta.d.ts +28 -0
  60. package/dist/extensions/pn-meta.d.ts.map +1 -0
  61. package/dist/extensions/pn-meta.js +12 -0
  62. package/dist/extensions/pn-meta.js.map +1 -0
  63. package/dist/fees-types.d.ts +10 -0
  64. package/dist/fees-types.d.ts.map +1 -0
  65. package/dist/fees-types.js +3 -0
  66. package/dist/fees-types.js.map +1 -0
  67. package/dist/identity-types.js +1 -1
  68. package/dist/identity-types.js.map +1 -1
  69. package/dist/index.d.ts +4 -1
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +7 -1
  72. package/dist/index.js.map +1 -1
  73. package/dist/logger-types.js +1 -1
  74. package/dist/logger-types.js.map +1 -1
  75. package/dist/multi-format/hash-types.js +1 -1
  76. package/dist/multi-format/hash-types.js.map +1 -1
  77. package/dist/multi-format/plain-types.js +1 -1
  78. package/dist/multi-format/plain-types.js.map +1 -1
  79. package/dist/multi-format-types.d.ts +1 -1
  80. package/dist/multi-format-types.d.ts.map +1 -1
  81. package/dist/multi-format-types.js +1 -1
  82. package/dist/multi-format-types.js.map +1 -1
  83. package/dist/payment-types.d.ts +252 -71
  84. package/dist/payment-types.d.ts.map +1 -1
  85. package/dist/payment-types.js +42 -20
  86. package/dist/payment-types.js.map +1 -1
  87. package/dist/request-logic-types.d.ts +37 -6
  88. package/dist/request-logic-types.d.ts.map +1 -1
  89. package/dist/request-logic-types.js +11 -4
  90. package/dist/request-logic-types.js.map +1 -1
  91. package/dist/signature-types.js +1 -1
  92. package/dist/signature-types.js.map +1 -1
  93. package/dist/storage-types.d.ts +60 -29
  94. package/dist/storage-types.d.ts.map +1 -1
  95. package/dist/storage-types.js +9 -14
  96. package/dist/storage-types.js.map +1 -1
  97. package/dist/transaction-types.d.ts +2 -2
  98. package/dist/transaction-types.d.ts.map +1 -1
  99. package/dist/transaction-types.js +2 -2
  100. package/dist/transaction-types.js.map +1 -1
  101. package/dist/utils.d.ts +18 -0
  102. package/dist/utils.d.ts.map +1 -0
  103. package/dist/utils.js +29 -0
  104. package/dist/utils.js.map +1 -0
  105. package/package.json +12 -22
  106. package/CHANGELOG.md +0 -1491
@@ -1,10 +1,33 @@
1
1
  import * as Extension from './extension-types';
2
2
  import * as Identity from './identity-types';
3
3
  import * as RequestLogic from './request-logic-types';
4
+ import { ChainName } from './currency-types';
5
+ /** Advanced Logic extensions */
6
+ export interface IAdvancedLogicExtensions {
7
+ addressBasedBtc: Extension.PnAddressBased.IAddressBased<Extension.PnAddressBased.ICreationParameters>;
8
+ addressBasedErc20: Extension.PnAddressBased.IAddressBased<Extension.PnAddressBased.ICreationParameters>;
9
+ addressBasedTestnetBtc: Extension.PnAddressBased.IAddressBased<Extension.PnAddressBased.ICreationParameters>;
10
+ contentData: Extension.ContentData.IContentData;
11
+ anyToErc20Proxy: Extension.PnAnyToErc20.IAnyToERC20;
12
+ declarative: Extension.PnAnyDeclarative.IAnyDeclarative<Extension.PnAnyDeclarative.ICreationParameters>;
13
+ ethereumInputData: Extension.PnReferenceBased.IReferenceBased<Extension.PnReferenceBased.ICreationParameters>;
14
+ nativeToken: Extension.PnReferenceBased.IReferenceBased<Extension.PnReferenceBased.ICreationParameters>[];
15
+ feeProxyContractErc20: Extension.PnFeeReferenceBased.IFeeReferenceBased<Extension.PnFeeReferenceBased.ICreationParameters>;
16
+ proxyContractErc20: Extension.PnReferenceBased.IReferenceBased<Extension.PnReferenceBased.ICreationParameters>;
17
+ erc777Stream: any;
18
+ feeProxyContractEth: Extension.PnFeeReferenceBased.IFeeReferenceBased<Extension.PnFeeReferenceBased.ICreationParameters>;
19
+ anyToEthProxy: Extension.PnFeeReferenceBased.IFeeReferenceBased<Extension.PnAnyToEth.ICreationParameters>;
20
+ anyToNativeToken: Extension.PnFeeReferenceBased.IFeeReferenceBased<Extension.PnFeeReferenceBased.ICreationParameters>[];
21
+ erc20TransferableReceivable: Extension.PnFeeReferenceBased.IFeeReferenceBased<Extension.PnFeeReferenceBased.ICreationParameters>;
22
+ metaPn: Extension.PnMeta.IMeta<Extension.PnMeta.ICreationParameters>;
23
+ }
4
24
  /** Advanced Logic layer */
5
25
  export interface IAdvancedLogic {
6
26
  applyActionToExtensions: (extensionsState: RequestLogic.IExtensionStates, extensionAction: Extension.IAction, requestState: RequestLogic.IRequest, actionSigner: Identity.IIdentity, timestamp: number) => RequestLogic.IExtensionStates;
7
- extensions: any;
27
+ getNativeTokenExtensionForNetwork: (network: ChainName) => Extension.IExtension<Extension.PnReferenceBased.ICreationParameters> | undefined;
28
+ getAnyToNativeTokenExtensionForNetwork: (network?: ChainName) => Extension.IExtension<Extension.PnAnyToAnyConversion.ICreationParameters> | undefined;
29
+ getFeeProxyContractErc20ForNetwork: (network?: ChainName) => Extension.PnFeeReferenceBased.IFeeReferenceBased | undefined;
30
+ extensions: IAdvancedLogicExtensions;
8
31
  }
9
32
  /** Creation extension parameters */
10
33
  export interface IExtensionCreation {
@@ -1 +1 @@
1
- {"version":3,"file":"advanced-logic-types.d.ts","sourceRoot":"","sources":["../src/advanced-logic-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AAEtD,2BAA2B;AAC3B,MAAM,WAAW,cAAc;IAC7B,uBAAuB,EAAE,CACvB,eAAe,EAAE,YAAY,CAAC,gBAAgB,EAC9C,eAAe,EAAE,SAAS,CAAC,OAAO,EAClC,YAAY,EAAE,YAAY,CAAC,QAAQ,EACnC,YAAY,EAAE,QAAQ,CAAC,SAAS,EAChC,SAAS,EAAE,MAAM,KACd,YAAY,CAAC,gBAAgB,CAAC;IACnC,UAAU,EAAE,GAAG,CAAC;CACjB;AAED,oCAAoC;AACpC,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAED,kCAAkC;AAClC,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB"}
1
+ {"version":3,"file":"advanced-logic-types.d.ts","sourceRoot":"","sources":["../src/advanced-logic-types.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as Identity from './identity-types';
2
2
  import * as Payment from './payment-types';
3
3
  import * as RequestLogic from './request-logic-types';
4
- /** Restrict research to two timestamp */
4
+ /** Restrict research between two timestamp */
5
5
  export interface ITimestampBoundaries {
6
6
  from?: number;
7
7
  to?: number;
@@ -24,10 +24,18 @@ export interface IRequestDataWithEvents extends IRequestData {
24
24
  export interface ICreateRequestParameters {
25
25
  requestInfo: RequestLogic.ICreateParameters | IRequestInfo;
26
26
  signer: Identity.IIdentity;
27
- paymentNetwork?: Payment.IPaymentNetworkCreateParameters;
27
+ paymentNetwork?: Payment.PaymentNetworkCreateParameters;
28
28
  topics?: any[];
29
29
  contentData?: any;
30
30
  disablePaymentDetection?: boolean;
31
+ disableEvents?: boolean;
32
+ }
33
+ export interface ICreateRequestOptions {
34
+ /**
35
+ * Disable the request refresh after creation
36
+ * Warning: the `balance` will be null.
37
+ */
38
+ skipRefresh?: boolean;
31
39
  }
32
40
  /** Parameters to create a request. ICreateParameters with a more flexible currency */
33
41
  export interface IRequestInfo {
@@ -44,4 +52,27 @@ export interface IRequestEvents {
44
52
  confirmed: (requestData: IRequestDataWithEvents) => void;
45
53
  error: (error: string) => void;
46
54
  }
55
+ /** Configuration variables for http-data-access and http-metamask-data-access */
56
+ export interface IHttpDataAccessConfig {
57
+ /** Name of the header containing the client version */
58
+ requestClientVersionHeader: string;
59
+ /** Maximum number of retries to attempt when http requests to the Node fail */
60
+ httpRequestMaxRetry: number;
61
+ /** Delay between retry in ms */
62
+ httpRequestRetryDelay: number;
63
+ /** Exponential backoff delay in ms when requests to the Node fail. */
64
+ httpRequestExponentialBackoffDelay: number;
65
+ /** Maximum exponential backoff delay in ms when requests to the Node fail. */
66
+ httpRequestMaxExponentialBackoffDelay: number;
67
+ /** Maximum number of retries to get the confirmation of a persistTransaction */
68
+ getConfirmationMaxRetry: number;
69
+ /** Delay between retry in ms to get the confirmation of a persistTransaction */
70
+ getConfirmationRetryDelay: number;
71
+ /** Exponential backoff delay in ms to get the confirmation of a persistTransaction */
72
+ getConfirmationExponentialBackoffDelay: number;
73
+ /** Maximum exponential backoff delay in ms to get the confirmation of a persistTransaction */
74
+ getConfirmationMaxExponentialBackoffDelay: number;
75
+ /** Delay to wait in ms before trying for the first time to get the confirmation of a persistTransaction */
76
+ getConfirmationDeferDelay: number;
77
+ }
47
78
  //# sourceMappingURL=client-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-types.d.ts","sourceRoot":"","sources":["../src/client-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AAEtD,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,6BAA6B;AAC7B,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC3E,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAChD,WAAW,EAAE,GAAG,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC,SAAS,CAAC;IACrC,OAAO,EAAE,YAAY,CAAC,eAAe,GAAG,IAAI,CAAC;CAC9C;AAED,+DAA+D;AAC/D,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,EAAE,EAAE,CAAC,CAAC,SAAS,MAAM,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACpF,IAAI,EAAE,CAAC,CAAC,SAAS,MAAM,cAAc,EACnC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KACnC,OAAO,CAAC;CACd;AAED,gCAAgC;AAChC,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,YAAY,CAAC,iBAAiB,GAAG,YAAY,CAAC;IAC3D,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC,+BAA+B,CAAC;IACzD,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,sFAAsF;AACtF,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC;IAC1C,cAAc,EAAE,YAAY,CAAC,MAAM,CAAC;IACpC,KAAK,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;IAC3B,cAAc,CAAC,EAAE,GAAG,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,sCAAsC;AACtC,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,CAAC,WAAW,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACzD,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC"}
1
+ {"version":3,"file":"client-types.d.ts","sourceRoot":"","sources":["../src/client-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,155 @@
1
+ import * as RequestLogicTypes from './request-logic-types';
2
+ /**
3
+ * List of supported EVM chains
4
+ */
5
+ export type EvmChainName = 'alfajores' | 'arbitrum-one' | 'arbitrum-rinkeby' | 'avalanche' | 'base' | 'bsc' | 'bsctest' | 'celo' | 'core' | 'fantom' | 'fuse' | 'goerli' | 'mainnet' | 'mantle' | 'mantle-testnet' | 'matic' | 'moonbeam' | 'mumbai' | 'optimism' | 'private' | 'rinkeby' | 'sepolia' | 'ronin' | 'sokol' | 'tombchain' | 'xdai' | 'zksynceratestnet' | 'zksyncera';
6
+ /**
7
+ * List of supported BTC chains
8
+ */
9
+ export type BtcChainName = 'mainnet' | 'testnet';
10
+ /**
11
+ * List of supported Declarative chains
12
+ */
13
+ export type DeclarativeChainName = 'tron' | 'solana';
14
+ /**
15
+ * List of supported NEAR chains
16
+ * FIXME: get rid of the wrong 'aurora' alias
17
+ */
18
+ export type NearChainName = 'aurora' | 'aurora-testnet' | 'near' | 'near-testnet';
19
+ export type ChainName = EvmChainName | BtcChainName | NearChainName | DeclarativeChainName;
20
+ /**
21
+ * Virtual machin chains, where payment proxy contracts can be deployed
22
+ */
23
+ export type VMChainName = EvmChainName | NearChainName;
24
+ /**
25
+ * Common types used in token configuration files
26
+ */
27
+ type TokenAddress = string;
28
+ type TokenDefinition = {
29
+ name: string;
30
+ symbol: string;
31
+ decimals: number;
32
+ id?: string;
33
+ };
34
+ export type TokenMap = Record<TokenAddress, TokenDefinition>;
35
+ /**
36
+ * Common types used in chain configuration files
37
+ */
38
+ export type Chain = {
39
+ chainId: number | string;
40
+ testnet?: boolean;
41
+ currencies?: TokenMap;
42
+ };
43
+ /**
44
+ * A native blockchain token (ETH, MATIC, ETH-rinkeby...)
45
+ */
46
+ export type NativeCurrency = {
47
+ symbol: string;
48
+ decimals: number;
49
+ network: ChainName;
50
+ };
51
+ type NamedCurrency = {
52
+ name: string;
53
+ };
54
+ export type NamedNativeCurrency = NativeCurrency & NamedCurrency;
55
+ /** Native Currency types */
56
+ export type NativeCurrencyType = RequestLogicTypes.CURRENCY.BTC | RequestLogicTypes.CURRENCY.ETH;
57
+ /**
58
+ * A Fiat currency (EUR, USD...)
59
+ */
60
+ export type ISO4217Currency = {
61
+ symbol: string;
62
+ decimals: number;
63
+ };
64
+ /**
65
+ * An ERC20 token (DAI, USDT...)
66
+ */
67
+ export type ERC20Currency = {
68
+ symbol: string;
69
+ decimals: number;
70
+ network: EvmChainName | NearChainName | DeclarativeChainName;
71
+ address: string;
72
+ };
73
+ /**
74
+ * An ERC777 SuperToken (DAIx, USDCx...)
75
+ */
76
+ export type ERC777Currency = {
77
+ symbol: string;
78
+ decimals: number;
79
+ network: EvmChainName;
80
+ address: string;
81
+ };
82
+ /**
83
+ * The minimum properties of a native Currency
84
+ */
85
+ export type NativeCurrencyInput = {
86
+ type: RequestLogicTypes.CURRENCY.ETH | RequestLogicTypes.CURRENCY.BTC;
87
+ } & NativeCurrency;
88
+ /**
89
+ * The minimum properties of an ISO4217 Currency
90
+ */
91
+ export type ISO4217CurrencyInput = {
92
+ type: RequestLogicTypes.CURRENCY.ISO4217;
93
+ } & ISO4217Currency;
94
+ /**
95
+ * The minimum properties of an ERC20 Currency
96
+ */
97
+ export type ERC20CurrencyInput = {
98
+ type: RequestLogicTypes.CURRENCY.ERC20;
99
+ } & ERC20Currency;
100
+ /**
101
+ * The minimum properties of an ERC777 Currency
102
+ */
103
+ export type ERC777CurrencyInput = {
104
+ type: RequestLogicTypes.CURRENCY.ERC777;
105
+ } & ERC777Currency;
106
+ /**
107
+ * The minimum properties of a Currency
108
+ */
109
+ export type CurrencyInput = NativeCurrencyInput | ISO4217CurrencyInput | ERC20CurrencyInput | ERC777CurrencyInput;
110
+ /**
111
+ * The description of Currency, its core properties and some computed properties.
112
+ * `meta` enables applications to add any metadata they need to a Currency
113
+ */
114
+ export type CurrencyDefinition<TMeta = unknown> = CurrencyInput & {
115
+ id: string;
116
+ hash: string;
117
+ meta: TMeta;
118
+ };
119
+ /**
120
+ * Alias for ICurrency for clarity in the context
121
+ */
122
+ export type StorageCurrency = RequestLogicTypes.ICurrency;
123
+ /**
124
+ * A Currency manager handles a list of currencies and provides utility to retrieve and change format
125
+ */
126
+ export interface ICurrencyManager<TMeta = unknown> {
127
+ from(symbolOrAddress: string, network?: string): CurrencyDefinition<TMeta> | undefined;
128
+ fromAddress(address: string, network?: string): CurrencyDefinition<TMeta> | undefined;
129
+ fromSymbol(symbol: string, network?: string): CurrencyDefinition<TMeta> | undefined;
130
+ fromHash(hash: string, network?: string): CurrencyDefinition<TMeta> | undefined;
131
+ fromStorageCurrency(currency: StorageCurrency): CurrencyDefinition<TMeta> | undefined;
132
+ getNativeCurrency(type: NativeCurrencyType, network: string): CurrencyDefinition<TMeta> | undefined;
133
+ getConversionPath(from: Pick<CurrencyDefinition, 'hash'>, to: Pick<CurrencyDefinition, 'hash'>, network: string): string[] | null;
134
+ supportsConversion(currency: Pick<CurrencyDefinition, 'hash'>, network: string): boolean;
135
+ validateAddress(address: string, currency: CurrencyInput | StorageCurrency): boolean;
136
+ validateCurrency(currency: StorageCurrency): boolean;
137
+ }
138
+ /**
139
+ * A mapping from old to new name for a given currency.
140
+ *
141
+ * Format { "chainName": {"TOKEN": ["NEW_TOKEN","NEW_CHAIN"]}}
142
+ */
143
+ export type LegacyTokenMap = Record<string, Record<string, [string, ChainName]>>;
144
+ /**
145
+ * currencyFrom => currencyTo => cost
146
+ */
147
+ export type CurrencyPairs = Record<string, Record<string, number>>;
148
+ /**
149
+ * Aggregators maps define pairs of currencies for which an onchain oracle exists, by network.
150
+ *
151
+ * Network => currencyFrom => currencyTo => cost
152
+ */
153
+ export type AggregatorsMap<T extends ChainName = ChainName> = Partial<Record<T, CurrencyPairs>>;
154
+ export {};
155
+ //# sourceMappingURL=currency-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency-types.d.ts","sourceRoot":"","sources":["../src/currency-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAAiB,MAAM,uBAAuB,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,YAAY,GACpB,WAAW,GACX,cAAc,GACd,kBAAkB,GAClB,WAAW,GACX,MAAM,GACN,KAAK,GACL,SAAS,GACT,MAAM,GACN,MAAM,GACN,QAAQ,GACR,MAAM,GACN,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,gBAAgB,GAChB,OAAO,GACP,UAAU,GACV,QAAQ,GACR,UAAU,GACV,SAAS,GACT,SAAS,GACT,SAAS,GACT,OAAO,GACP,OAAO,GACP,WAAW,GACX,MAAM,GACN,kBAAkB,GAClB,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,gBAAgB,GAAG,MAAM,GAAG,cAAc,CAAC;AAElF,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,YAAY,GAAG,aAAa,GAAG,oBAAoB,CAAC;AAE3F;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC;AAEvD;;GAEG;AACH,KAAK,YAAY,GAAG,MAAM,CAAC;AAC3B,KAAK,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACvF,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,QAAQ,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,SAAS,CAAC;CACpB,CAAC;AACF,KAAK,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AACtC,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,aAAa,CAAC;AAEjE,4BAA4B;AAC5B,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC;AAEjG;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,YAAY,GAAG,aAAa,GAAG,oBAAoB,CAAC;IAC7D,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,GAAG,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC;CACvE,GAAG,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC;CAC1C,GAAG,eAAe,CAAC;AAEpB;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC;CACxC,GAAG,aAAa,CAAC;AAElB;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC;CACzC,GAAG,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,mBAAmB,GACnB,oBAAoB,GACpB,kBAAkB,GAClB,mBAAmB,CAAC;AAExB;;;GAGG;AACH,MAAM,MAAM,kBAAkB,CAAC,KAAK,GAAG,OAAO,IAAI,aAAa,GAAG;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,iBAAiB,CAAC,SAAS,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,KAAK,GAAG,OAAO;IAC/C,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IACvF,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IACtF,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IACpF,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IAChF,mBAAmB,CAAC,QAAQ,EAAE,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IACtF,iBAAiB,CACf,IAAI,EAAE,kBAAkB,EACxB,OAAO,EAAE,MAAM,GACd,kBAAkB,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IACzC,iBAAiB,CACf,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,EACtC,EAAE,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,EACpC,OAAO,EAAE,MAAM,GACd,MAAM,EAAE,GAAG,IAAI,CAAC;IACnB,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACzF,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,eAAe,GAAG,OAAO,CAAC;IACrF,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC;CACtD;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=currency-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currency-types.js","sourceRoot":"","sources":["../src/currency-types.ts"],"names":[],"mappings":""}
@@ -1,13 +1,23 @@
1
- /// <reference types="node" />
2
- import { EventEmitter } from 'events';
1
+ import * as StorageTypes from './storage-types';
2
+ import { ConfirmationEventEmitter } from './events';
3
3
  /** Data Access Layer */
4
- export interface IDataAccess {
4
+ export interface IDataRead {
5
5
  initialize: () => Promise<void>;
6
- persistTransaction: (transactionData: ITransaction, channelId: string, topics?: string[]) => Promise<IReturnPersistTransaction>;
6
+ close: () => Promise<void>;
7
7
  getTransactionsByChannelId: (channelId: string, timestampBoundaries?: ITimestampBoundaries) => Promise<IReturnGetTransactions>;
8
8
  getChannelsByTopic: (topic: string, updatedBetween?: ITimestampBoundaries) => Promise<IReturnGetChannelsByTopic>;
9
9
  getChannelsByMultipleTopics(topics: string[], updatedBetween?: ITimestampBoundaries): Promise<IReturnGetChannelsByTopic>;
10
- _getStatus(detailed?: boolean): any;
10
+ }
11
+ export interface IDataWrite {
12
+ initialize: () => Promise<void>;
13
+ close: () => Promise<void>;
14
+ persistTransaction: (transactionData: ITransaction, channelId: string, topics?: string[]) => Promise<IReturnPersistTransaction>;
15
+ }
16
+ export interface IDataAccess extends IDataRead, IDataWrite {
17
+ _getStatus?(): Promise<IDataAccessStatus>;
18
+ }
19
+ export interface IDataAccessStatus {
20
+ storage: any;
11
21
  }
12
22
  /** Enum of state possible for an action */
13
23
  export declare enum TransactionState {
@@ -19,8 +29,7 @@ export interface ITimestampBoundaries {
19
29
  from?: number;
20
30
  to?: number;
21
31
  }
22
- /** return interface for PersistTransaction */
23
- export interface IReturnPersistTransaction extends EventEmitter {
32
+ export type IReturnPersistTransactionRaw = {
24
33
  /** meta information */
25
34
  meta: {
26
35
  /** location of the persisted transaction */
@@ -28,11 +37,13 @@ export interface IReturnPersistTransaction extends EventEmitter {
28
37
  /** topics used to index the persisted transaction */
29
38
  topics: string[];
30
39
  /** meta-data from the layer below */
31
- storageMeta?: any;
40
+ storageMeta?: StorageTypes.IEntryMetadata;
32
41
  };
33
42
  /** result of the execution */
34
- result: {};
35
- }
43
+ result: Record<string, never>;
44
+ };
45
+ export type PersistTransactionEmitter = ConfirmationEventEmitter<IReturnPersistTransactionRaw>;
46
+ export type IReturnPersistTransaction = PersistTransactionEmitter & IReturnPersistTransactionRaw;
36
47
  /** return interface for getTransactionsByChannelId */
37
48
  export interface IReturnGetTransactions {
38
49
  /** meta information */
@@ -40,7 +51,7 @@ export interface IReturnGetTransactions {
40
51
  /** location of the transactions (follow the position of the result.transactions) */
41
52
  transactionsStorageLocation: string[];
42
53
  /** meta-data from the layer below */
43
- storageMeta?: any;
54
+ storageMeta?: StorageTypes.IEntryMetadata[];
44
55
  };
45
56
  /** result of the execution */
46
57
  result: {
@@ -56,7 +67,7 @@ export interface IReturnGetChannelsByTopic {
56
67
  [key: string]: string[];
57
68
  };
58
69
  /** meta-data from the layer below */
59
- storageMeta?: any;
70
+ storageMeta?: Record<string, StorageTypes.IEntryMetadata[] | undefined>;
60
71
  };
61
72
  /** result of the execution: the transactions grouped by channel id */
62
73
  result: {
@@ -106,19 +117,18 @@ export interface ITimestampedTransaction {
106
117
  timestamp: number;
107
118
  }
108
119
  /** Transaction data */
109
- export declare type ITransactionData = string;
110
- /**
111
- * An index to store locations and timestamps of transactions in IPFS.
112
- */
113
- export interface ITransactionIndex {
114
- initialize(): Promise<void>;
115
- getLastTransactionTimestamp(): Promise<number | null>;
116
- addTransaction(dataId: string, header: IBlockHeader, timestamp: number): Promise<void>;
117
- getChannelIdsForTopic(topic: string, timestampBoundaries?: ITimestampBoundaries): Promise<string[]>;
118
- getChannelIdsForMultipleTopics(topics: string[], timestampBoundaries?: ITimestampBoundaries): Promise<string[]>;
119
- getIndexedLocations(): Promise<string[]>;
120
- getStorageLocationList(channelId: string, timestampBoundaries?: ITimestampBoundaries): Promise<string[]>;
121
- updateTimestamp(dataId: string, timestamp: number): Promise<void>;
122
- removeTransaction(dataId: string): Promise<void>;
120
+ export type ITransactionData = string;
121
+ export type PendingItem = {
122
+ topics: string[];
123
+ transaction: ITransaction;
124
+ storageResult: StorageTypes.IEntry;
125
+ };
126
+ export interface IPendingStore {
127
+ get(channelId: string): PendingItem | undefined;
128
+ findByTopics(topic: string[]): (PendingItem & {
129
+ channelId: string;
130
+ })[];
131
+ add(channelId: string, item: PendingItem): void;
132
+ remove(channelId: string): void;
123
133
  }
124
134
  //# sourceMappingURL=data-access-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-access-types.d.ts","sourceRoot":"","sources":["../src/data-access-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-access-types.d.ts","sourceRoot":"","sources":["../src/data-access-types.ts"],"names":[],"mappings":"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"}
@@ -6,5 +6,5 @@ var TransactionState;
6
6
  (function (TransactionState) {
7
7
  TransactionState["PENDING"] = "pending";
8
8
  TransactionState["CONFIRMED"] = "confirmed";
9
- })(TransactionState = exports.TransactionState || (exports.TransactionState = {}));
9
+ })(TransactionState || (exports.TransactionState = TransactionState = {}));
10
10
  //# sourceMappingURL=data-access-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"data-access-types.js","sourceRoot":"","sources":["../src/data-access-types.ts"],"names":[],"mappings":";;;AAyBA,2CAA2C;AAC3C,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,2CAAuB,CAAA;AACzB,CAAC,EAHW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAG3B"}
1
+ {"version":3,"file":"data-access-types.js","sourceRoot":"","sources":["../src/data-access-types.ts"],"names":[],"mappings":";;;AAyCA,2CAA2C;AAC3C,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,2CAAuB,CAAA;AACzB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
@@ -7,5 +7,5 @@ var METHOD;
7
7
  METHOD["ECIES"] = "ecies";
8
8
  METHOD["AES256_CBC"] = "aes256-cbc";
9
9
  METHOD["AES256_GCM"] = "aes256-gcm";
10
- })(METHOD = exports.METHOD || (exports.METHOD = {}));
10
+ })(METHOD || (exports.METHOD = METHOD = {}));
11
11
  //# sourceMappingURL=encryption-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"encryption-types.js","sourceRoot":"","sources":["../src/encryption-types.ts"],"names":[],"mappings":";;;AAwBA,mCAAmC;AACnC,IAAY,MAIX;AAJD,WAAY,MAAM;IAChB,yBAAe,CAAA;IACf,mCAAyB,CAAA;IACzB,mCAAyB,CAAA;AAC3B,CAAC,EAJW,MAAM,GAAN,cAAM,KAAN,cAAM,QAIjB"}
1
+ {"version":3,"file":"encryption-types.js","sourceRoot":"","sources":["../src/encryption-types.ts"],"names":[],"mappings":";;;AAwBA,mCAAmC;AACnC,IAAY,MAIX;AAJD,WAAY,MAAM;IAChB,yBAAe,CAAA;IACf,mCAAyB,CAAA;IACzB,mCAAyB,CAAA;AAC3B,CAAC,EAJW,MAAM,sBAAN,MAAM,QAIjB"}
@@ -0,0 +1,6 @@
1
+ import TypedEmitter from 'typed-emitter';
2
+ export type ConfirmationEventEmitter<T> = TypedEmitter<{
3
+ confirmed: (receipt: T) => void;
4
+ error: (error: unknown) => void;
5
+ }>;
6
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,YAAY,CAAC;IACrD,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC;IAChC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACjC,CAAC,CAAC"}
package/dist/events.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":""}
@@ -1,28 +1,43 @@
1
1
  import * as ContentData from './extensions/content-data-types';
2
2
  import * as PnAddressBased from './extensions/pn-any-address-based-types';
3
3
  import * as PnAnyDeclarative from './extensions/pn-any-declarative-types';
4
+ import * as PnStreamReferenceBased from './extensions/pn-any-stream-reference-based-types';
4
5
  import * as PnFeeReferenceBased from './extensions/pn-any-fee-reference-based-types';
5
6
  import * as PnReferenceBased from './extensions/pn-any-reference-based-types';
7
+ import * as PnAnyToErc20 from './extensions/pn-any-to-erc20-types';
8
+ import * as PnAnyToEth from './extensions/pn-any-to-eth-types';
9
+ import * as PnMeta from './extensions/pn-meta';
10
+ import * as PnAnyToAnyConversion from './extensions/pn-any-to-any-conversion-types';
6
11
  import * as Identity from './identity-types';
7
12
  import * as RequestLogic from './request-logic-types';
8
- export { ContentData, PnAnyDeclarative, PnAddressBased, PnFeeReferenceBased, PnReferenceBased };
13
+ export { ContentData, PnAnyDeclarative, PnAddressBased, PnStreamReferenceBased, PnFeeReferenceBased, PnReferenceBased, PnAnyToErc20, PnAnyToEth, PnAnyToAnyConversion, PnMeta, };
9
14
  /** Extension interface is extended by the extensions implementation */
10
- export interface IExtension {
11
- applyActionToExtension: (extensionsState: RequestLogic.IExtensionStates, extensionAction: IAction, requestState: RequestLogic.IRequest, actionSigner: Identity.IIdentity, timestamp: number) => RequestLogic.IExtensionStates;
15
+ export interface IExtension<TCreationParameters = any> {
16
+ extensionType: TYPE;
17
+ extensionId: ID;
18
+ currentVersion: string;
19
+ applyActionToExtension: (extensionsState: RequestLogic.IExtensionStates, extensionAction: IAction<TCreationParameters>, requestState: RequestLogic.IRequest, actionSigner: Identity.IIdentity, timestamp: number) => RequestLogic.IExtensionStates;
20
+ createCreationAction: (parameters: TCreationParameters) => IAction<TCreationParameters>;
12
21
  }
22
+ export type ApplyAction<T = any> = (extensionState: IState<T>, extensionAction: IAction<T>, requestState: RequestLogic.IRequest, actionSigner: Identity.IIdentity, timestamp: number) => IState<T>;
13
23
  /** Extensions state in advanced logic */
14
- export interface IState {
24
+ export interface IState<T = any> {
15
25
  type: TYPE;
16
26
  id: ID;
17
27
  version: string;
18
28
  events: IEvent[];
19
- values: any;
29
+ values: T;
30
+ }
31
+ /** State for payment networks extensions only */
32
+ export interface IPaymentNetworkState<T = any> extends IState<T> {
33
+ id: PAYMENT_NETWORK_ID;
34
+ type: TYPE.PAYMENT_NETWORK;
20
35
  }
21
36
  /** Creation action object */
22
- export interface IAction {
37
+ export interface IAction<T = any> {
23
38
  action: string;
24
39
  id: ID;
25
- parameters?: any;
40
+ parameters?: T;
26
41
  version?: string;
27
42
  }
28
43
  /** extension event object */
@@ -30,21 +45,61 @@ export interface IEvent {
30
45
  name: string;
31
46
  parameters: any;
32
47
  timestamp: number;
48
+ from?: Identity.IIdentity;
33
49
  }
34
- /** Identification of extensions handled by this implementation */
35
- export declare enum ID {
36
- CONTENT_DATA = "content-data",
37
- PAYMENT_NETWORK_BITCOIN_ADDRESS_BASED = "pn-bitcoin-address-based",
38
- PAYMENT_NETWORK_TESTNET_BITCOIN_ADDRESS_BASED = "pn-testnet-bitcoin-address-based",
39
- PAYMENT_NETWORK_ERC20_ADDRESS_BASED = "pn-erc20-address-based",
40
- PAYMENT_NETWORK_ERC20_PROXY_CONTRACT = "pn-erc20-proxy-contract",
41
- PAYMENT_NETWORK_ERC20_FEE_PROXY_CONTRACT = "pn-erc20-fee-proxy-contract",
42
- PAYMENT_NETWORK_ETH_INPUT_DATA = "pn-eth-input-data",
43
- PAYMENT_NETWORK_ANY_DECLARATIVE = "pn-any-declarative"
50
+ /**
51
+ * Identification of extensions handled by this implementation.
52
+ * */
53
+ export declare enum OTHER_ID {
54
+ CONTENT_DATA = "content-data"
44
55
  }
56
+ export declare enum PAYMENT_NETWORK_ID {
57
+ BITCOIN_ADDRESS_BASED = "pn-bitcoin-address-based",
58
+ TESTNET_BITCOIN_ADDRESS_BASED = "pn-testnet-bitcoin-address-based",
59
+ ERC20_ADDRESS_BASED = "pn-erc20-address-based",
60
+ ERC20_PROXY_CONTRACT = "pn-erc20-proxy-contract",
61
+ ERC20_FEE_PROXY_CONTRACT = "pn-erc20-fee-proxy-contract",
62
+ ERC777_STREAM = "pn-erc777-stream",
63
+ ETH_FEE_PROXY_CONTRACT = "pn-eth-fee-proxy-contract",
64
+ ETH_INPUT_DATA = "pn-eth-input-data",
65
+ NATIVE_TOKEN = "pn-native-token",
66
+ ANY_TO_NATIVE_TOKEN = "pn-any-to-native-token",
67
+ ANY_DECLARATIVE = "pn-any-declarative",
68
+ ANY_TO_ERC20_PROXY = "pn-any-to-erc20-proxy",
69
+ ANY_TO_ETH_PROXY = "pn-any-to-eth-proxy",
70
+ ERC20_TRANSFERABLE_RECEIVABLE = "pn-erc20-transferable-receivable",
71
+ META = "pn-meta"
72
+ }
73
+ export declare const ID: {
74
+ BITCOIN_ADDRESS_BASED: PAYMENT_NETWORK_ID.BITCOIN_ADDRESS_BASED;
75
+ TESTNET_BITCOIN_ADDRESS_BASED: PAYMENT_NETWORK_ID.TESTNET_BITCOIN_ADDRESS_BASED;
76
+ ERC20_ADDRESS_BASED: PAYMENT_NETWORK_ID.ERC20_ADDRESS_BASED;
77
+ ERC20_PROXY_CONTRACT: PAYMENT_NETWORK_ID.ERC20_PROXY_CONTRACT;
78
+ ERC20_FEE_PROXY_CONTRACT: PAYMENT_NETWORK_ID.ERC20_FEE_PROXY_CONTRACT;
79
+ ERC777_STREAM: PAYMENT_NETWORK_ID.ERC777_STREAM;
80
+ ETH_FEE_PROXY_CONTRACT: PAYMENT_NETWORK_ID.ETH_FEE_PROXY_CONTRACT;
81
+ ETH_INPUT_DATA: PAYMENT_NETWORK_ID.ETH_INPUT_DATA;
82
+ NATIVE_TOKEN: PAYMENT_NETWORK_ID.NATIVE_TOKEN;
83
+ ANY_TO_NATIVE_TOKEN: PAYMENT_NETWORK_ID.ANY_TO_NATIVE_TOKEN;
84
+ ANY_DECLARATIVE: PAYMENT_NETWORK_ID.ANY_DECLARATIVE;
85
+ ANY_TO_ERC20_PROXY: PAYMENT_NETWORK_ID.ANY_TO_ERC20_PROXY;
86
+ ANY_TO_ETH_PROXY: PAYMENT_NETWORK_ID.ANY_TO_ETH_PROXY;
87
+ ERC20_TRANSFERABLE_RECEIVABLE: PAYMENT_NETWORK_ID.ERC20_TRANSFERABLE_RECEIVABLE;
88
+ META: PAYMENT_NETWORK_ID.META;
89
+ CONTENT_DATA: OTHER_ID.CONTENT_DATA;
90
+ };
91
+ type EnumToType<T> = T[keyof T];
92
+ export type ID = EnumToType<typeof ID>;
45
93
  /** Type of extensions */
46
94
  export declare enum TYPE {
47
95
  CONTENT_DATA = "content-data",
48
96
  PAYMENT_NETWORK = "payment-network"
49
97
  }
98
+ /** Actions possible */
99
+ export declare enum ACTION {
100
+ CREATE = "create"
101
+ }
102
+ export type SupportedActions = {
103
+ [actionId: string]: ApplyAction;
104
+ };
50
105
  //# sourceMappingURL=extension-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-types.d.ts","sourceRoot":"","sources":["../src/extension-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,cAAc,MAAM,yCAAyC,CAAC;AAC1E,OAAO,KAAK,gBAAgB,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,mBAAmB,MAAM,+CAA+C,CAAC;AACrF,OAAO,KAAK,gBAAgB,MAAM,2CAA2C,CAAC;AAC9E,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,CAAC;AAEhG,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,sBAAsB,EAAE,CACtB,eAAe,EAAE,YAAY,CAAC,gBAAgB,EAC9C,eAAe,EAAE,OAAO,EACxB,YAAY,EAAE,YAAY,CAAC,QAAQ,EACnC,YAAY,EAAE,QAAQ,CAAC,SAAS,EAChC,SAAS,EAAE,MAAM,KACd,YAAY,CAAC,gBAAgB,CAAC;CACpC;AAED,yCAAyC;AACzC,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,EAAE,CAAC;IACP,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;CACb;AAED,6BAA6B;AAC7B,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,EAAE,CAAC;IACP,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,6BAA6B;AAC7B,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,GAAG,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,kEAAkE;AAClE,oBAAY,EAAE;IACZ,YAAY,iBAAiB;IAC7B,qCAAqC,6BAA6B;IAClE,6CAA6C,qCAAqC;IAClF,mCAAmC,2BAA2B;IAC9D,oCAAoC,4BAA4B;IAChE,wCAAwC,gCAAgC;IACxE,8BAA8B,sBAAsB;IACpD,+BAA+B,uBAAuB;CACvD;AAED,yBAAyB;AACzB,oBAAY,IAAI;IACd,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;CACpC"}
1
+ {"version":3,"file":"extension-types.d.ts","sourceRoot":"","sources":["../src/extension-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,cAAc,MAAM,yCAAyC,CAAC;AAC1E,OAAO,KAAK,gBAAgB,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,sBAAsB,MAAM,kDAAkD,CAAC;AAC3F,OAAO,KAAK,mBAAmB,MAAM,+CAA+C,CAAC;AACrF,OAAO,KAAK,gBAAgB,MAAM,2CAA2C,CAAC;AAC9E,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,UAAU,MAAM,kCAAkC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAC;AAC/C,OAAO,KAAK,oBAAoB,MAAM,6CAA6C,CAAC;AACpF,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,MAAM,GACP,CAAC;AAEF,uEAAuE;AACvE,MAAM,WAAW,UAAU,CAAC,mBAAmB,GAAG,GAAG;IACnD,aAAa,EAAE,IAAI,CAAC;IACpB,WAAW,EAAE,EAAE,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,sBAAsB,EAAE,CACtB,eAAe,EAAE,YAAY,CAAC,gBAAgB,EAC9C,eAAe,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAC7C,YAAY,EAAE,YAAY,CAAC,QAAQ,EACnC,YAAY,EAAE,QAAQ,CAAC,SAAS,EAChC,SAAS,EAAE,MAAM,KACd,YAAY,CAAC,gBAAgB,CAAC;IACnC,oBAAoB,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACzF;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,GAAG,IAAI,CACjC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,EACzB,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,EAC3B,YAAY,EAAE,YAAY,CAAC,QAAQ,EACnC,YAAY,EAAE,QAAQ,CAAC,SAAS,EAChC,SAAS,EAAE,MAAM,KACd,MAAM,CAAC,CAAC,CAAC,CAAC;AAEf,yCAAyC;AACzC,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,GAAG;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,EAAE,CAAC;IACP,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,CAAC,CAAC;CACX;AAED,iDAAiD;AACjD,MAAM,WAAW,oBAAoB,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,MAAM,CAAC,CAAC,CAAC;IAC9D,EAAE,EAAE,kBAAkB,CAAC;IACvB,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC;CAC5B;AAED,6BAA6B;AAC7B,MAAM,WAAW,OAAO,CAAC,CAAC,GAAG,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,EAAE,CAAC;IACP,UAAU,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,6BAA6B;AAC7B,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,GAAG,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;CAC3B;AAED;;KAEK;AACL,oBAAY,QAAQ;IAClB,YAAY,iBAAiB;CAC9B;AAED,oBAAY,kBAAkB;IAC5B,qBAAqB,6BAA6B;IAClD,6BAA6B,qCAAqC;IAClE,mBAAmB,2BAA2B;IAC9C,oBAAoB,4BAA4B;IAChD,wBAAwB,gCAAgC;IACxD,aAAa,qBAAqB;IAClC,sBAAsB,8BAA8B;IACpD,cAAc,sBAAsB;IACpC,YAAY,oBAAoB;IAChC,mBAAmB,2BAA2B;IAC9C,eAAe,uBAAuB;IACtC,kBAAkB,0BAA0B;IAC5C,gBAAgB,wBAAwB;IACxC,6BAA6B,qCAAqC;IAClE,IAAI,YAAY;CACjB;AAED,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;CAGd,CAAC;AAEF,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAChC,MAAM,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;AAEvC,yBAAyB;AACzB,oBAAY,IAAI;IACd,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;CACpC;AAED,uBAAuB;AACvB,oBAAY,MAAM;IAChB,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAA;CAAE,CAAC"}