@solana/transactions 2.0.0-experimental.c5061ae → 2.0.0-experimental.c8d8b83

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 (52) hide show
  1. package/dist/index.browser.cjs +148 -53
  2. package/dist/index.browser.cjs.map +1 -1
  3. package/dist/index.browser.js +142 -55
  4. package/dist/index.browser.js.map +1 -1
  5. package/dist/index.development.js +197 -99
  6. package/dist/index.development.js.map +1 -1
  7. package/dist/index.native.js +142 -55
  8. package/dist/index.native.js.map +1 -1
  9. package/dist/index.node.cjs +146 -53
  10. package/dist/index.node.cjs.map +1 -1
  11. package/dist/index.node.js +144 -55
  12. package/dist/index.node.js.map +1 -1
  13. package/dist/index.production.min.js +16 -10
  14. package/dist/types/accounts.d.ts +2 -2
  15. package/dist/types/accounts.d.ts.map +1 -0
  16. package/dist/types/blockhash.d.ts +1 -1
  17. package/dist/types/blockhash.d.ts.map +1 -0
  18. package/dist/types/compile-address-table-lookups.d.ts +1 -1
  19. package/dist/types/compile-address-table-lookups.d.ts.map +1 -0
  20. package/dist/types/compile-header.d.ts.map +1 -0
  21. package/dist/types/compile-instructions.d.ts +1 -1
  22. package/dist/types/compile-instructions.d.ts.map +1 -0
  23. package/dist/types/compile-lifetime-token.d.ts.map +1 -0
  24. package/dist/types/compile-static-accounts.d.ts +1 -1
  25. package/dist/types/compile-static-accounts.d.ts.map +1 -0
  26. package/dist/types/compile-transaction.d.ts.map +1 -0
  27. package/dist/types/create-transaction.d.ts.map +1 -0
  28. package/dist/types/durable-nonce.d.ts +10 -2
  29. package/dist/types/durable-nonce.d.ts.map +1 -0
  30. package/dist/types/fee-payer.d.ts +3 -2
  31. package/dist/types/fee-payer.d.ts.map +1 -0
  32. package/dist/types/index.d.ts +1 -0
  33. package/dist/types/index.d.ts.map +1 -0
  34. package/dist/types/instructions.d.ts.map +1 -0
  35. package/dist/types/message.d.ts.map +1 -0
  36. package/dist/types/serializers/address-table-lookup.d.ts.map +1 -0
  37. package/dist/types/serializers/header.d.ts.map +1 -0
  38. package/dist/types/serializers/index.d.ts +2 -0
  39. package/dist/types/serializers/index.d.ts.map +1 -0
  40. package/dist/types/serializers/instruction.d.ts.map +1 -0
  41. package/dist/types/serializers/message.d.ts.map +1 -0
  42. package/dist/types/serializers/transaction-version.d.ts.map +1 -0
  43. package/dist/types/serializers/transaction.d.ts.map +1 -0
  44. package/dist/types/serializers/unimplemented.d.ts.map +1 -0
  45. package/dist/types/signatures.d.ts +12 -3
  46. package/dist/types/signatures.d.ts.map +1 -0
  47. package/dist/types/types.d.ts +7 -0
  48. package/dist/types/types.d.ts.map +1 -0
  49. package/dist/types/unsigned-transaction.d.ts.map +1 -0
  50. package/dist/types/wire-transaction.d.ts +1 -1
  51. package/dist/types/wire-transaction.d.ts.map +1 -0
  52. package/package.json +18 -18
@@ -1,5 +1,7 @@
1
+ import { Base58EncodedAddress } from '@solana/addresses';
1
2
  import { IInstruction, IInstructionWithAccounts, IInstructionWithData } from '@solana/instructions';
2
3
  import { ReadonlyAccount, ReadonlySignerAccount, WritableAccount } from '@solana/instructions/dist/types/accounts';
4
+ import { ITransactionWithSignatures } from './signatures';
3
5
  import { BaseTransaction } from './types';
4
6
  type AdvanceNonceAccountInstruction<TNonceAccountAddress extends string = string, TNonceAuthorityAddress extends string = string> = IInstruction<'11111111111111111111111111111111'> & IInstructionWithAccounts<readonly [
5
7
  WritableAccount<TNonceAccountAddress>,
@@ -7,10 +9,15 @@ type AdvanceNonceAccountInstruction<TNonceAccountAddress extends string = string
7
9
  ReadonlySignerAccount<TNonceAuthorityAddress>
8
10
  ]> & IInstructionWithData<AdvanceNonceAccountInstructionData>;
9
11
  type AdvanceNonceAccountInstructionData = Uint8Array & {
10
- readonly __advanceNonceAccountInstructionData: unique symbol;
12
+ readonly __brand: unique symbol;
11
13
  };
14
+ type DurableNonceConfig<TNonceAccountAddress extends string = string, TNonceAuthorityAddress extends string = string, TNonceValue extends string = string> = Readonly<{
15
+ readonly nonce: Nonce<TNonceValue>;
16
+ readonly nonceAccountAddress: Base58EncodedAddress<TNonceAccountAddress>;
17
+ readonly nonceAuthorityAddress: Base58EncodedAddress<TNonceAuthorityAddress>;
18
+ }>;
12
19
  export type Nonce<TNonceValue extends string = string> = TNonceValue & {
13
- readonly __nonce: unique symbol;
20
+ readonly __brand: unique symbol;
14
21
  };
15
22
  type NonceLifetimeConstraint<TNonceValue extends string = string> = Readonly<{
16
23
  nonce: Nonce<TNonceValue>;
@@ -23,5 +30,6 @@ export interface IDurableNonceTransaction<TNonceAccountAddress extends string =
23
30
  readonly lifetimeConstraint: NonceLifetimeConstraint<TNonceValue>;
24
31
  }
25
32
  export declare function assertIsDurableNonceTransaction(transaction: BaseTransaction | (BaseTransaction & IDurableNonceTransaction)): asserts transaction is BaseTransaction & IDurableNonceTransaction;
33
+ export declare function setTransactionLifetimeUsingDurableNonce<TTransaction extends BaseTransaction, TNonceAccountAddress extends string = string, TNonceAuthorityAddress extends string = string, TNonceValue extends string = string>({ nonce, nonceAccountAddress, nonceAuthorityAddress, }: DurableNonceConfig<TNonceAccountAddress, TNonceAuthorityAddress, TNonceValue>, transaction: TTransaction | (TTransaction & IDurableNonceTransaction)): Omit<TTransaction, keyof ITransactionWithSignatures> & IDurableNonceTransaction<TNonceAccountAddress, TNonceAuthorityAddress, TNonceValue>;
26
34
  export {};
27
35
  //# sourceMappingURL=durable-nonce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"durable-nonce.d.ts","sourceRoot":"","sources":["../../src/durable-nonce.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAe,YAAY,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjH,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAEnH,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,KAAK,8BAA8B,CAC/B,oBAAoB,SAAS,MAAM,GAAG,MAAM,EAC5C,sBAAsB,SAAS,MAAM,GAAG,MAAM,IAC9C,YAAY,CAAC,kCAAkC,CAAC,GAChD,wBAAwB,CACpB,SAAS;IACL,eAAe,CAAC,oBAAoB,CAAC;IACrC,eAAe,CAAC,6CAA6C,CAAC;IAC9D,qBAAqB,CAAC,sBAAsB,CAAC;CAChD,CACJ,GACD,oBAAoB,CAAC,kCAAkC,CAAC,CAAC;AAC7D,KAAK,kCAAkC,GAAG,UAAU,GAAG;IACnD,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAC;CACnC,CAAC;AACF,KAAK,kBAAkB,CACnB,oBAAoB,SAAS,MAAM,GAAG,MAAM,EAC5C,sBAAsB,SAAS,MAAM,GAAG,MAAM,EAC9C,WAAW,SAAS,MAAM,GAAG,MAAM,IACnC,QAAQ,CAAC;IACT,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;IACzE,QAAQ,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;CAChF,CAAC,CAAC;AACH,MAAM,MAAM,KAAK,CAAC,WAAW,SAAS,MAAM,GAAG,MAAM,IAAI,WAAW,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAC3G,KAAK,uBAAuB,CAAC,WAAW,SAAS,MAAM,GAAG,MAAM,IAAI,QAAQ,CAAC;IACzE,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;CAC7B,CAAC,CAAC;AAOH,MAAM,WAAW,wBAAwB,CACrC,oBAAoB,SAAS,MAAM,GAAG,MAAM,EAC5C,sBAAsB,SAAS,MAAM,GAAG,MAAM,EAC9C,WAAW,SAAS,MAAM,GAAG,MAAM;IAEnC,QAAQ,CAAC,YAAY,EAAE,SAAS;QAE5B,8BAA8B,CAAC,oBAAoB,EAAE,sBAAsB,CAAC;QAC5E,GAAG,YAAY,EAAE;KACpB,CAAC;IACF,QAAQ,CAAC,kBAAkB,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;CACrE;AAED,wBAAgB,+BAA+B,CAC3C,WAAW,EAAE,eAAe,GAAG,CAAC,eAAe,GAAG,wBAAwB,CAAC,GAC5E,OAAO,CAAC,WAAW,IAAI,eAAe,GAAG,wBAAwB,CAKnE;AA2DD,wBAAgB,uCAAuC,CACnD,YAAY,SAAS,eAAe,EACpC,oBAAoB,SAAS,MAAM,GAAG,MAAM,EAC5C,sBAAsB,SAAS,MAAM,GAAG,MAAM,EAC9C,WAAW,SAAS,MAAM,GAAG,MAAM,EAEnC,EACI,KAAK,EACL,mBAAmB,EACnB,qBAAqB,GACxB,EAAE,kBAAkB,CAAC,oBAAoB,EAAE,sBAAsB,EAAE,WAAW,CAAC,EAChF,WAAW,EAAE,YAAY,GAAG,CAAC,YAAY,GAAG,wBAAwB,CAAC,GACtE,IAAI,CAAC,YAAY,EAAE,MAAM,0BAA0B,CAAC,GACnD,wBAAwB,CAAC,oBAAoB,EAAE,sBAAsB,EAAE,WAAW,CAAC,CAuBtF"}
@@ -1,8 +1,9 @@
1
- import { Base58EncodedAddress } from '@solana/keys';
1
+ import { Base58EncodedAddress } from '@solana/addresses';
2
2
  import { ITransactionWithSignatures } from './signatures';
3
3
  import { BaseTransaction } from './types';
4
4
  export interface ITransactionWithFeePayer<TAddress extends string = string> {
5
5
  readonly feePayer: Base58EncodedAddress<TAddress>;
6
6
  }
7
- export declare function setTransactionFeePayer<TFeePayerAddress extends string, TTransaction extends BaseTransaction>(feePayer: Base58EncodedAddress<TFeePayerAddress>, transaction: TTransaction | (TTransaction & ITransactionWithFeePayer<TFeePayerAddress>) | (TTransaction & ITransactionWithSignatures) | (TTransaction & ITransactionWithFeePayer<TFeePayerAddress> & ITransactionWithSignatures)): (TTransaction & ITransactionWithFeePayer<TFeePayerAddress>) | (Omit<TTransaction, keyof ITransactionWithSignatures> & ITransactionWithFeePayer<TFeePayerAddress>);
7
+ export declare function setTransactionFeePayer<TFeePayerAddress extends string, TTransaction extends BaseTransaction>(feePayer: Base58EncodedAddress<TFeePayerAddress>, transaction: (TTransaction & ITransactionWithSignatures) | (TTransaction & ITransactionWithFeePayer<string> & ITransactionWithSignatures)): Omit<TTransaction, keyof ITransactionWithSignatures> & ITransactionWithFeePayer<TFeePayerAddress>;
8
+ export declare function setTransactionFeePayer<TFeePayerAddress extends string, TTransaction extends BaseTransaction>(feePayer: Base58EncodedAddress<TFeePayerAddress>, transaction: TTransaction | (TTransaction & ITransactionWithFeePayer<string>)): TTransaction & ITransactionWithFeePayer<TFeePayerAddress>;
8
9
  //# sourceMappingURL=fee-payer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fee-payer.d.ts","sourceRoot":"","sources":["../../src/fee-payer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,MAAM,WAAW,wBAAwB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM;IACtE,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC;CACrD;AAED,wBAAgB,sBAAsB,CAAC,gBAAgB,SAAS,MAAM,EAAE,YAAY,SAAS,eAAe,EACxG,QAAQ,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,EAChD,WAAW,EACL,CAAC,YAAY,GAAG,0BAA0B,CAAC,GAC3C,CAAC,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,GAAG,0BAA0B,CAAC,GACrF,IAAI,CAAC,YAAY,EAAE,MAAM,0BAA0B,CAAC,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;AAErG,wBAAgB,sBAAsB,CAAC,gBAAgB,SAAS,MAAM,EAAE,YAAY,SAAS,eAAe,EACxG,QAAQ,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,EAChD,WAAW,EAAE,YAAY,GAAG,CAAC,YAAY,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,GAC9E,YAAY,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC"}
@@ -3,6 +3,7 @@ export * from './create-transaction';
3
3
  export * from './durable-nonce';
4
4
  export * from './fee-payer';
5
5
  export * from './instructions';
6
+ export * from './serializers';
6
7
  export * from './signatures';
7
8
  export * from './types';
8
9
  export * from './wire-transaction';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,wBAAgB,4BAA4B,CAAC,YAAY,SAAS,eAAe,EAC7E,WAAW,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EACjD,WAAW,EAAE,YAAY,GAAG,CAAC,YAAY,GAAG,0BAA0B,CAAC,GACxE,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM,0BAA0B,CAAC,CAOrE;AAED,wBAAgB,6BAA6B,CAAC,YAAY,SAAS,eAAe,EAC9E,WAAW,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EACjD,WAAW,EAAE,YAAY,GAAG,CAAC,YAAY,GAAG,0BAA0B,CAAC,GACxE,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM,0BAA0B,CAAC,CAOrE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/message.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,KAAK,mBAAmB,GAAG,QAAQ,CAAC;IAChC,MAAM,EAAE,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;IACpD,YAAY,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;IACzD,aAAa,EAAE,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;IAC3D,cAAc,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAChE,CAAC,CAAC;AAEH,KAAK,qBAAqB,GAAG,eAAe,GACxC,wBAAwB,GACxB,CAAC,iCAAiC,GAAG,wBAAwB,CAAC,CAAC;AAEnE,MAAM,MAAM,eAAe,GAAG,qBAAqB,GAAG,wBAAwB,CAAC;AAE/E,KAAK,qBAAqB,GAAG,mBAAmB,GAC5C,QAAQ,CAAC;IACL,OAAO,EAAE,QAAQ,CAAC;CACrB,CAAC,CAAC;AAEP,KAAK,wBAAwB,GAAG,mBAAmB,GAC/C,QAAQ,CAAC;IACL,mBAAmB,CAAC,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;IACxE,OAAO,EAAE,MAAM,CAAC;CACnB,CAAC,CAAC;AAEP,wBAAgB,cAAc,CAC1B,WAAW,EAAE,qBAAqB,GAAG,QAAQ,CAAC;IAAE,OAAO,EAAE,QAAQ,CAAA;CAAE,CAAC,GACrE,qBAAqB,CAAC;AACzB,wBAAgB,cAAc,CAAC,WAAW,EAAE,qBAAqB,GAAG,wBAAwB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address-table-lookup.d.ts","sourceRoot":"","sources":["../../../src/serializers/address-table-lookup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAiD,MAAM,sCAAsC,CAAC;AAGxH,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpF,wBAAgB,0BAA0B,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAkD3E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/serializers/header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAc,MAAM,sCAAsC,CAAC;AAE9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEjE,wBAAgB,qBAAqB,IAAI,UAAU,CAAC,aAAa,CAAC,CA4CjE"}
@@ -0,0 +1,2 @@
1
+ export * from './transaction';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/serializers/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instruction.d.ts","sourceRoot":"","sources":["../../../src/serializers/instruction.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,UAAU,EAAwB,MAAM,sCAAsC,CAAC;AAErH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,wBAAgB,mBAAmB,IAAI,UAAU,CAAC,WAAW,CAAC,CAgE7D"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/serializers/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,UAAU,EAKb,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA8F7C,wBAAgB,yBAAyB,IAAI,UAAU,CAAC,eAAe,CAAC,CAMvE;AAED,wBAAgB,yBAAyB,IAAI,UAAU,CAAC,eAAe,CAAC,CAMvE;AAED,wBAAgB,uBAAuB,IAAI,UAAU,CAAC,eAAe,CAAC,CAMrE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction-version.d.ts","sourceRoot":"","sources":["../../../src/serializers/transaction-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAiC9C,wBAAgB,4BAA4B,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAM7E;AAED,wBAAgB,4BAA4B,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAM7E;AAED,wBAAgB,0BAA0B,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAM3E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/serializers/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,UAAU,EAAoB,MAAM,sCAAsC,CAAC;AAElG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAUhE,KAAK,uBAAuB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC;AAgB5E,wBAAgB,qBAAqB,IAAI,UAAU,CAAC,uBAAuB,CAAC,CAM3E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unimplemented.d.ts","sourceRoot":"","sources":["../../../src/serializers/unimplemented.ts"],"names":[],"mappings":"AAOA,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,KAAK,CAIjE;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,KAAK,CAIjE"}
@@ -1,10 +1,19 @@
1
- import { Base58EncodedAddress, Ed25519Signature } from '@solana/keys';
1
+ import { Base58EncodedAddress } from '@solana/addresses';
2
+ import { Ed25519Signature } from '@solana/keys';
3
+ import { ITransactionWithFeePayer } from './fee-payer';
2
4
  import { compileMessage } from './message';
3
5
  export interface IFullySignedTransaction extends ITransactionWithSignatures {
4
- readonly __fullySignedTransaction: unique symbol;
6
+ readonly __brand: unique symbol;
5
7
  }
6
8
  export interface ITransactionWithSignatures {
7
9
  readonly signatures: Readonly<Record<Base58EncodedAddress, Ed25519Signature>>;
8
10
  }
9
- export declare function signTransaction<TTransaction extends Parameters<typeof compileMessage>[0]>(keyPair: CryptoKeyPair, transaction: TTransaction | (TTransaction & ITransactionWithSignatures)): Promise<TTransaction & ITransactionWithSignatures>;
11
+ export type TransactionSignature = string & {
12
+ readonly __brand: unique symbol;
13
+ };
14
+ export declare function assertIsTransactionSignature(putativeTransactionSignature: string): asserts putativeTransactionSignature is TransactionSignature;
15
+ export declare function isTransactionSignature(putativeTransactionSignature: string): putativeTransactionSignature is TransactionSignature;
16
+ export declare function getSignatureFromTransaction(transaction: ITransactionWithFeePayer & ITransactionWithSignatures): TransactionSignature;
17
+ export declare function signTransaction<TTransaction extends Parameters<typeof compileMessage>[0]>(keyPairs: CryptoKeyPair[], transaction: TTransaction | (TTransaction & ITransactionWithSignatures)): Promise<TTransaction & ITransactionWithSignatures>;
18
+ export declare function transactionSignature(putativeTransactionSignature: string): TransactionSignature;
10
19
  //# sourceMappingURL=signatures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signatures.d.ts","sourceRoot":"","sources":["../../src/signatures.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAA2B,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAa,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAmB,cAAc,EAAE,MAAM,WAAW,CAAC;AAG5D,MAAM,WAAW,uBAAwB,SAAQ,0BAA0B;IACvE,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAC;CACnC;AACD,MAAM,WAAW,0BAA0B;IACvC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,CAAC;CACjF;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAEhF,wBAAgB,4BAA4B,CACxC,4BAA4B,EAAE,MAAM,GACrC,OAAO,CAAC,4BAA4B,IAAI,oBAAoB,CAsB9D;AAED,wBAAgB,sBAAsB,CAClC,4BAA4B,EAAE,MAAM,GACrC,4BAA4B,IAAI,oBAAoB,CAiBtD;AAQD,wBAAgB,2BAA2B,CACvC,WAAW,EAAE,wBAAwB,GAAG,0BAA0B,GACnE,oBAAoB,CAUtB;AAED,wBAAsB,eAAe,CAAC,YAAY,SAAS,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,EAC3F,QAAQ,EAAE,aAAa,EAAE,EACzB,WAAW,EAAE,YAAY,GAAG,CAAC,YAAY,GAAG,0BAA0B,CAAC,GACxE,OAAO,CAAC,YAAY,GAAG,0BAA0B,CAAC,CAqBpD;AAED,wBAAgB,oBAAoB,CAAC,4BAA4B,EAAE,MAAM,GAAG,oBAAoB,CAG/F"}
@@ -1,4 +1,11 @@
1
1
  import { IAccountMeta, IInstruction } from '@solana/instructions';
2
+ /** A string of bytes that are definitely a serialized message */
3
+ export type SerializedMessageBytes = Uint8Array & {
4
+ readonly __serializedMessageBytes: unique symbol;
5
+ };
6
+ export type SerializedMessageBytesBase64 = string & {
7
+ readonly __serializedMessageBytesBase64: unique symbol;
8
+ };
2
9
  export type BaseTransaction = Readonly<{
3
10
  instructions: readonly IInstruction[];
4
11
  version: TransactionVersion;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAElE,iEAAiE;AACjE,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG;IAAE,QAAQ,CAAC,wBAAwB,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AACvG,MAAM,MAAM,4BAA4B,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,8BAA8B,EAAE,OAAO,MAAM,CAAA;CAAE,CAAC;AAE/G,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;IACnC,YAAY,EAAE,SAAS,YAAY,EAAE,CAAC;IACtC,OAAO,EAAE,kBAAkB,CAAC;CAC/B,CAAC,CAAC;AAEH,KAAK,iBAAiB,GAAG,eAAe,GACpC,QAAQ,CAAC;IACL,YAAY,EAAE,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,GAClD,QAAQ,CAAC;QAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,YAAY,EAAE,CAAA;KAAE,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,EAAE,QAAQ,CAAC;CACrB,CAAC,CAAC;AAEP,KAAK,aAAa,GAAG,eAAe,GAChC,QAAQ,CAAC;IACL,YAAY,EAAE,SAAS,YAAY,EAAE,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC;CACd,CAAC,CAAC;AAEP,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,aAAa,CAAC;AAC5D,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unsigned-transaction.d.ts","sourceRoot":"","sources":["../../src/unsigned-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,GAAG,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,wBAAgB,sBAAsB,CAAC,YAAY,SAAS,eAAe,EACvE,WAAW,EAAE,YAAY,GAAG,CAAC,YAAY,GAAG,0BAA0B,CAAC,GACxE,YAAY,GAAG,IAAI,CAAC,YAAY,GAAG,0BAA0B,EAAE,MAAM,0BAA0B,CAAC,CAWlG"}
@@ -1,6 +1,6 @@
1
1
  import { getTransactionEncoder } from './serializers/transaction';
2
2
  export type Base64EncodedWireTransaction = string & {
3
- readonly __base64EncodedWireTransaction: unique symbol;
3
+ readonly __brand: unique symbol;
4
4
  };
5
5
  export declare function getBase64EncodedWireTransaction(transaction: Parameters<ReturnType<typeof getTransactionEncoder>['serialize']>[0]): Base64EncodedWireTransaction;
6
6
  //# sourceMappingURL=wire-transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wire-transaction.d.ts","sourceRoot":"","sources":["../../src/wire-transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,MAAM,MAAM,4BAA4B,GAAG,MAAM,GAAG;IAChD,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAC;CACnC,CAAC;AAEF,wBAAgB,+BAA+B,CAC3C,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,GAClF,4BAA4B,CAO9B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solana/transactions",
3
- "version": "2.0.0-experimental.c5061ae",
3
+ "version": "2.0.0-experimental.c8d8b83",
4
4
  "description": "Helpers for creating and serializing transactions",
5
5
  "exports": {
6
6
  "browser": {
@@ -46,32 +46,31 @@
46
46
  "maintained node versions"
47
47
  ],
48
48
  "dependencies": {
49
- "@metaplex-foundation/umi-serializers": "^0.8.5",
50
- "@solana/keys": "2.0.0-experimental.c5061ae"
49
+ "@metaplex-foundation/umi-serializers": "^0.8.9",
50
+ "@solana/addresses": "2.0.0-experimental.c8d8b83",
51
+ "@solana/keys": "2.0.0-experimental.c8d8b83"
51
52
  },
52
53
  "devDependencies": {
53
54
  "@solana/eslint-config-solana": "^1.0.2",
54
- "@swc/core": "^1.3.18",
55
- "@swc/jest": "^0.2.23",
56
- "@types/jest": "^29.5.3",
57
- "@typescript-eslint/eslint-plugin": "^6.0.0",
58
- "@typescript-eslint/parser": "^6.0.0",
55
+ "@swc/jest": "^0.2.28",
56
+ "@types/jest": "^29.5.5",
57
+ "@types/node": "^20.6.3",
58
+ "@typescript-eslint/eslint-plugin": "^6.7.0",
59
+ "@typescript-eslint/parser": "^6.3.0",
59
60
  "agadoo": "^3.0.0",
60
61
  "eslint": "^8.45.0",
61
62
  "eslint-plugin-sort-keys-fix": "^1.1.2",
62
- "jest": "^29.6.1",
63
- "jest-runner-eslint": "^2.0.0",
63
+ "jest": "^29.7.0",
64
+ "jest-runner-eslint": "^2.1.0",
64
65
  "jest-runner-prettier": "^1.0.0",
65
- "postcss": "^8.4.12",
66
- "prettier": "^2.7.1",
67
- "ts-node": "^10.9.1",
68
- "tsup": "6.7.0",
69
- "typescript": "^5.1.6",
66
+ "prettier": "^2.8",
67
+ "tsup": "7.2.0",
68
+ "typescript": "^5.2.2",
70
69
  "version-from-git": "^1.1.1",
71
- "@solana/instructions": "2.0.0-experimental.c5061ae",
72
70
  "build-scripts": "0.0.0",
73
71
  "test-config": "0.0.0",
74
72
  "test-matchers": "0.0.0",
73
+ "@solana/instructions": "2.0.0-experimental.c8d8b83",
75
74
  "tsconfig": "0.0.0"
76
75
  },
77
76
  "bundlewatch": {
@@ -87,11 +86,12 @@
87
86
  "compile:typedefs": "tsc -p ./tsconfig.declarations.json",
88
87
  "dev": "jest -c node_modules/test-config/jest-dev.config.ts --rootDir . --watch",
89
88
  "publish-packages": "pnpm publish --tag experimental --access public --no-git-checks",
89
+ "style:fix": "pnpm eslint --fix src/* && pnpm prettier -w src/*",
90
90
  "test:lint": "jest -c node_modules/test-config/jest-lint.config.ts --rootDir . --silent",
91
91
  "test:prettier": "jest -c node_modules/test-config/jest-prettier.config.ts --rootDir . --silent",
92
92
  "test:treeshakability:browser": "agadoo dist/index.browser.js",
93
- "test:treeshakability:native": "agadoo dist/index.node.js",
94
- "test:treeshakability:node": "agadoo dist/index.native.js",
93
+ "test:treeshakability:native": "agadoo dist/index.native.js",
94
+ "test:treeshakability:node": "agadoo dist/index.node.js",
95
95
  "test:typecheck": "tsc --noEmit",
96
96
  "test:unit:browser": "jest -c node_modules/test-config/jest-unit.config.browser.ts --rootDir . --silent",
97
97
  "test:unit:node": "jest -c node_modules/test-config/jest-unit.config.node.ts --rootDir . --silent"