@breeztech/breez-sdk-spark-react-native 0.19.2 → 0.20.0-dev1

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.
@@ -187,6 +187,11 @@ export declare function newRestChainService(url: string, network: Network, apiTy
187
187
  export declare function newSharedSdkContext(config: SdkContextConfig, asyncOpts_?: {
188
188
  signal: AbortSignal;
189
189
  }): Promise<SdkContextInterface>;
190
+ /**
191
+ * A CPFP signer backed by a single private key. Signs P2WPKH and P2TR key-path
192
+ * inputs only; taproot script-path spends are not supported.
193
+ */
194
+ export declare function singleKeyCpfpSigner(secretKeyBytes: ArrayBuffer): CpfpSigner;
190
195
  /**
191
196
  * Trait for event listeners
192
197
  */
@@ -4487,6 +4492,38 @@ export declare const PaymentRequestSource: Readonly<{
4487
4492
  */
4488
4493
  defaults: () => Partial<PaymentRequestSource>;
4489
4494
  }>;
4495
+ /**
4496
+ * How much to fund one branch of the exit to avoid a fan-out.
4497
+ */
4498
+ export type PerBranchFunding = {
4499
+ /**
4500
+ * The leaf whose branch this funds.
4501
+ */
4502
+ leafId: string;
4503
+ /**
4504
+ * Fund a UTXO of at least this many satoshis for this branch.
4505
+ */
4506
+ fundingSat: bigint;
4507
+ };
4508
+ /**
4509
+ * Generated factory for {@link PerBranchFunding} record objects.
4510
+ */
4511
+ export declare const PerBranchFunding: Readonly<{
4512
+ /**
4513
+ * Create a frozen instance of {@link PerBranchFunding}, with defaults specified
4514
+ * in Rust, in the {@link breez_sdk_spark} crate.
4515
+ */
4516
+ create: (partial: Partial<PerBranchFunding> & Required<Omit<PerBranchFunding, never>>) => PerBranchFunding;
4517
+ /**
4518
+ * Create a frozen instance of {@link PerBranchFunding}, with defaults specified
4519
+ * in Rust, in the {@link breez_sdk_spark} crate.
4520
+ */
4521
+ new: (partial: Partial<PerBranchFunding> & Required<Omit<PerBranchFunding, never>>) => PerBranchFunding;
4522
+ /**
4523
+ * Defaults specified in the {@link breez_sdk_spark} crate.
4524
+ */
4525
+ defaults: () => Partial<PerBranchFunding>;
4526
+ }>;
4490
4527
  export type PrepareLnurlPayRequest = {
4491
4528
  /**
4492
4529
  * The amount to send. Denominated in satoshis, or in token base units
@@ -4666,6 +4703,98 @@ export declare const PrepareSendPaymentResponse: Readonly<{
4666
4703
  */
4667
4704
  defaults: () => Partial<PrepareSendPaymentResponse>;
4668
4705
  }>;
4706
+ /**
4707
+ * Request for `prepare_unilateral_exit`, the exit quote.
4708
+ */
4709
+ export type PrepareUnilateralExitRequest = {
4710
+ /**
4711
+ * Target fee rate in sat/vByte, applied to every CPFP child, the fan-out,
4712
+ * and the sweep.
4713
+ */
4714
+ feeRateSatPerVbyte: bigint;
4715
+ fundingKind: CpfpFundingKind;
4716
+ /**
4717
+ * The Bitcoin address the swept funds are sent to.
4718
+ */
4719
+ destination: string;
4720
+ selection: ExitLeafSelection;
4721
+ };
4722
+ /**
4723
+ * Generated factory for {@link PrepareUnilateralExitRequest} record objects.
4724
+ */
4725
+ export declare const PrepareUnilateralExitRequest: Readonly<{
4726
+ /**
4727
+ * Create a frozen instance of {@link PrepareUnilateralExitRequest}, with defaults specified
4728
+ * in Rust, in the {@link breez_sdk_spark} crate.
4729
+ */
4730
+ create: (partial: Partial<PrepareUnilateralExitRequest> & Required<Omit<PrepareUnilateralExitRequest, never>>) => PrepareUnilateralExitRequest;
4731
+ /**
4732
+ * Create a frozen instance of {@link PrepareUnilateralExitRequest}, with defaults specified
4733
+ * in Rust, in the {@link breez_sdk_spark} crate.
4734
+ */
4735
+ new: (partial: Partial<PrepareUnilateralExitRequest> & Required<Omit<PrepareUnilateralExitRequest, never>>) => PrepareUnilateralExitRequest;
4736
+ /**
4737
+ * Defaults specified in the {@link breez_sdk_spark} crate.
4738
+ */
4739
+ defaults: () => Partial<PrepareUnilateralExitRequest>;
4740
+ }>;
4741
+ /**
4742
+ * Response from `prepare_unilateral_exit`: which leaves would exit, the exact
4743
+ * fee at the requested rate, and how much to fund.
4744
+ */
4745
+ export type PrepareUnilateralExitResponse = {
4746
+ leaves: Array<UnilateralExitLeaf>;
4747
+ /**
4748
+ * Total value of the selected leaves, in satoshis.
4749
+ */
4750
+ recoverableValueSat: bigint;
4751
+ /**
4752
+ * Total on-chain fee when funding with a single UTXO (fanned out across
4753
+ * branches), in satoshis. Exact for the given funding kind; nodes the
4754
+ * operators report on-chain are assumed already paid, so a partially-exited
4755
+ * tree quotes a lower fee than a fresh one.
4756
+ */
4757
+ totalFeeSat: bigint;
4758
+ /**
4759
+ * The part of `total_fee_sat` paid for the fan-out transaction. Funding one
4760
+ * UTXO per branch (`per_branch_funding`) avoids it. Zero for a single
4761
+ * branch (no fan-out).
4762
+ */
4763
+ fanoutFeeSat: bigint;
4764
+ /**
4765
+ * Fund a single UTXO of at least this many satoshis to exit with a fan-out.
4766
+ */
4767
+ singleUtxoFundingSat: bigint;
4768
+ /**
4769
+ * To skip the fan-out, fund one UTXO per branch of at least the given
4770
+ * amount (one entry per selected leaf).
4771
+ */
4772
+ perBranchFunding: Array<PerBranchFunding>;
4773
+ /**
4774
+ * The fee rate this quote was computed at, in sat/vByte.
4775
+ */
4776
+ feeRateSatPerVbyte: bigint;
4777
+ destination: string;
4778
+ };
4779
+ /**
4780
+ * Generated factory for {@link PrepareUnilateralExitResponse} record objects.
4781
+ */
4782
+ export declare const PrepareUnilateralExitResponse: Readonly<{
4783
+ /**
4784
+ * Create a frozen instance of {@link PrepareUnilateralExitResponse}, with defaults specified
4785
+ * in Rust, in the {@link breez_sdk_spark} crate.
4786
+ */
4787
+ create: (partial: Partial<PrepareUnilateralExitResponse> & Required<Omit<PrepareUnilateralExitResponse, never>>) => PrepareUnilateralExitResponse;
4788
+ /**
4789
+ * Create a frozen instance of {@link PrepareUnilateralExitResponse}, with defaults specified
4790
+ * in Rust, in the {@link breez_sdk_spark} crate.
4791
+ */
4792
+ new: (partial: Partial<PrepareUnilateralExitResponse> & Required<Omit<PrepareUnilateralExitResponse, never>>) => PrepareUnilateralExitResponse;
4793
+ /**
4794
+ * Defaults specified in the {@link breez_sdk_spark} crate.
4795
+ */
4796
+ defaults: () => Partial<PrepareUnilateralExitResponse>;
4797
+ }>;
4669
4798
  export type ProvisionalPayment = {
4670
4799
  /**
4671
4800
  * Unique identifier for the payment
@@ -5015,6 +5144,44 @@ export declare const RefundDepositResponse: Readonly<{
5015
5144
  */
5016
5145
  defaults: () => Partial<RefundDepositResponse>;
5017
5146
  }>;
5147
+ /**
5148
+ * Response from refunding pending conversions.
5149
+ */
5150
+ export type RefundPendingConversionsResponse = {
5151
+ /**
5152
+ * Conversions successfully refunded this pass.
5153
+ */
5154
+ refunded: number;
5155
+ /**
5156
+ * Conversions intentionally deferred (eligible but held back by a
5157
+ * safety window). The next pass will retry them.
5158
+ */
5159
+ skipped: number;
5160
+ /**
5161
+ * Conversions whose clawback did not complete this pass (rejected or
5162
+ * errored; funds not returned). The next pass will retry them.
5163
+ */
5164
+ failed: number;
5165
+ };
5166
+ /**
5167
+ * Generated factory for {@link RefundPendingConversionsResponse} record objects.
5168
+ */
5169
+ export declare const RefundPendingConversionsResponse: Readonly<{
5170
+ /**
5171
+ * Create a frozen instance of {@link RefundPendingConversionsResponse}, with defaults specified
5172
+ * in Rust, in the {@link breez_sdk_spark} crate.
5173
+ */
5174
+ create: (partial: Partial<RefundPendingConversionsResponse> & Required<Omit<RefundPendingConversionsResponse, never>>) => RefundPendingConversionsResponse;
5175
+ /**
5176
+ * Create a frozen instance of {@link RefundPendingConversionsResponse}, with defaults specified
5177
+ * in Rust, in the {@link breez_sdk_spark} crate.
5178
+ */
5179
+ new: (partial: Partial<RefundPendingConversionsResponse> & Required<Omit<RefundPendingConversionsResponse, never>>) => RefundPendingConversionsResponse;
5180
+ /**
5181
+ * Defaults specified in the {@link breez_sdk_spark} crate.
5182
+ */
5183
+ defaults: () => Partial<RefundPendingConversionsResponse>;
5184
+ }>;
5018
5185
  export type RegisterLightningAddressRequest = {
5019
5186
  username: string;
5020
5187
  description: string | undefined;
@@ -6683,6 +6850,161 @@ export declare const UnfreezeIssuerTokenResponse: Readonly<{
6683
6850
  */
6684
6851
  defaults: () => Partial<UnfreezeIssuerTokenResponse>;
6685
6852
  }>;
6853
+ /**
6854
+ * A leaf selected for exit, with its value.
6855
+ */
6856
+ export type UnilateralExitLeaf = {
6857
+ leafId: string;
6858
+ /**
6859
+ * The leaf's value in satoshis.
6860
+ */
6861
+ value: bigint;
6862
+ };
6863
+ /**
6864
+ * Generated factory for {@link UnilateralExitLeaf} record objects.
6865
+ */
6866
+ export declare const UnilateralExitLeaf: Readonly<{
6867
+ /**
6868
+ * Create a frozen instance of {@link UnilateralExitLeaf}, with defaults specified
6869
+ * in Rust, in the {@link breez_sdk_spark} crate.
6870
+ */
6871
+ create: (partial: Partial<UnilateralExitLeaf> & Required<Omit<UnilateralExitLeaf, never>>) => UnilateralExitLeaf;
6872
+ /**
6873
+ * Create a frozen instance of {@link UnilateralExitLeaf}, with defaults specified
6874
+ * in Rust, in the {@link breez_sdk_spark} crate.
6875
+ */
6876
+ new: (partial: Partial<UnilateralExitLeaf> & Required<Omit<UnilateralExitLeaf, never>>) => UnilateralExitLeaf;
6877
+ /**
6878
+ * Defaults specified in the {@link breez_sdk_spark} crate.
6879
+ */
6880
+ defaults: () => Partial<UnilateralExitLeaf>;
6881
+ }>;
6882
+ /**
6883
+ * Request for `unilateral_exit`: a `prepare_unilateral_exit` quote plus the
6884
+ * funding UTXOs that pay its fees. The signer is passed separately (it is not a
6885
+ * plain data value).
6886
+ */
6887
+ export type UnilateralExitRequest = {
6888
+ /**
6889
+ * The quote returned by `prepare_unilateral_exit`, naming the leaves to exit.
6890
+ */
6891
+ prepared: PrepareUnilateralExitResponse;
6892
+ /**
6893
+ * The funding UTXOs that pay the exit's on-chain fees, meeting the quote's
6894
+ * `single_utxo_funding_sat` (one UTXO) or `per_branch_funding` (one per branch).
6895
+ */
6896
+ fundingInputs: Array<CpfpInput>;
6897
+ };
6898
+ /**
6899
+ * Generated factory for {@link UnilateralExitRequest} record objects.
6900
+ */
6901
+ export declare const UnilateralExitRequest: Readonly<{
6902
+ /**
6903
+ * Create a frozen instance of {@link UnilateralExitRequest}, with defaults specified
6904
+ * in Rust, in the {@link breez_sdk_spark} crate.
6905
+ */
6906
+ create: (partial: Partial<UnilateralExitRequest> & Required<Omit<UnilateralExitRequest, never>>) => UnilateralExitRequest;
6907
+ /**
6908
+ * Create a frozen instance of {@link UnilateralExitRequest}, with defaults specified
6909
+ * in Rust, in the {@link breez_sdk_spark} crate.
6910
+ */
6911
+ new: (partial: Partial<UnilateralExitRequest> & Required<Omit<UnilateralExitRequest, never>>) => UnilateralExitRequest;
6912
+ /**
6913
+ * Defaults specified in the {@link breez_sdk_spark} crate.
6914
+ */
6915
+ defaults: () => Partial<UnilateralExitRequest>;
6916
+ }>;
6917
+ /**
6918
+ * Result of `unilateral_exit`: a cost summary plus the complete, signed exit
6919
+ * path.
6920
+ */
6921
+ export type UnilateralExitResponse = {
6922
+ /**
6923
+ * Total value of the selected leaves, in satoshis.
6924
+ */
6925
+ recoverableValueSat: bigint;
6926
+ /**
6927
+ * The actual total on-chain fee the returned transactions pay at the
6928
+ * requested rate, in satoshis. A resumed or partially-confirmed exit pays
6929
+ * less because already-confirmed steps are not rebuilt.
6930
+ */
6931
+ totalFeeSat: bigint;
6932
+ leaves: Array<UnilateralExitLeaf>;
6933
+ /**
6934
+ * The full signed transaction set, in valid topological (broadcast) order
6935
+ * with shared ancestors appearing once and the sweep last.
6936
+ */
6937
+ transactions: Array<UnilateralExitTransaction>;
6938
+ };
6939
+ /**
6940
+ * Generated factory for {@link UnilateralExitResponse} record objects.
6941
+ */
6942
+ export declare const UnilateralExitResponse: Readonly<{
6943
+ /**
6944
+ * Create a frozen instance of {@link UnilateralExitResponse}, with defaults specified
6945
+ * in Rust, in the {@link breez_sdk_spark} crate.
6946
+ */
6947
+ create: (partial: Partial<UnilateralExitResponse> & Required<Omit<UnilateralExitResponse, never>>) => UnilateralExitResponse;
6948
+ /**
6949
+ * Create a frozen instance of {@link UnilateralExitResponse}, with defaults specified
6950
+ * in Rust, in the {@link breez_sdk_spark} crate.
6951
+ */
6952
+ new: (partial: Partial<UnilateralExitResponse> & Required<Omit<UnilateralExitResponse, never>>) => UnilateralExitResponse;
6953
+ /**
6954
+ * Defaults specified in the {@link breez_sdk_spark} crate.
6955
+ */
6956
+ defaults: () => Partial<UnilateralExitResponse>;
6957
+ }>;
6958
+ /**
6959
+ * One transaction in the unilateral exit path, with everything needed to
6960
+ * order and broadcast it.
6961
+ */
6962
+ export type UnilateralExitTransaction = {
6963
+ kind: UnilateralExitTxKind;
6964
+ /**
6965
+ * The tree node this transaction belongs to. Unset for the fan-out and the
6966
+ * sweep.
6967
+ */
6968
+ nodeId: string | undefined;
6969
+ txid: string;
6970
+ txHex: string;
6971
+ /**
6972
+ * The signed CPFP child to broadcast alongside `tx_hex` as a package.
6973
+ * Unset for the fan-out and the sweep (no anchor to bump) and for a
6974
+ * `Confirmed` step (its CPFP is already on-chain).
6975
+ */
6976
+ cpfpTxHex: string | undefined;
6977
+ /**
6978
+ * Relative CSV timelock, in blocks, that must mature on the spent input
6979
+ * before this transaction can confirm. Unset when there is no timelock.
6980
+ */
6981
+ csvTimelockBlocks: /*u32*/ number | undefined;
6982
+ /**
6983
+ * Txids of other entries in this list that must be confirmed before this
6984
+ * one can be broadcast.
6985
+ */
6986
+ dependsOn: Array<string>;
6987
+ status: ConfirmationStatus;
6988
+ };
6989
+ /**
6990
+ * Generated factory for {@link UnilateralExitTransaction} record objects.
6991
+ */
6992
+ export declare const UnilateralExitTransaction: Readonly<{
6993
+ /**
6994
+ * Create a frozen instance of {@link UnilateralExitTransaction}, with defaults specified
6995
+ * in Rust, in the {@link breez_sdk_spark} crate.
6996
+ */
6997
+ create: (partial: Partial<UnilateralExitTransaction> & Required<Omit<UnilateralExitTransaction, never>>) => UnilateralExitTransaction;
6998
+ /**
6999
+ * Create a frozen instance of {@link UnilateralExitTransaction}, with defaults specified
7000
+ * in Rust, in the {@link breez_sdk_spark} crate.
7001
+ */
7002
+ new: (partial: Partial<UnilateralExitTransaction> & Required<Omit<UnilateralExitTransaction, never>>) => UnilateralExitTransaction;
7003
+ /**
7004
+ * Defaults specified in the {@link breez_sdk_spark} crate.
7005
+ */
7006
+ defaults: () => Partial<UnilateralExitTransaction>;
7007
+ }>;
6686
7008
  /**
6687
7009
  * Request to unregister an existing webhook.
6688
7010
  */
@@ -6771,6 +7093,14 @@ export type UpdateUserSettingsRequest = {
6771
7093
  * Update the active stable balance token. `None` means no change.
6772
7094
  */
6773
7095
  stableBalanceActiveLabel: StableBalanceActiveLabel | undefined;
7096
+ /**
7097
+ * Designate or remove the wallet's master identity, a second public key
7098
+ * the Spark operators accept as a reader of this wallet's balance and
7099
+ * history while `spark_private_mode_enabled` is set. The master identity
7100
+ * can only read: payments still require the owner's keys. `None` means no
7101
+ * change.
7102
+ */
7103
+ sparkMasterIdentityPublicKey: SparkMasterIdentityPublicKey | undefined;
6774
7104
  };
6775
7105
  /**
6776
7106
  * Generated factory for {@link UpdateUserSettingsRequest} record objects.
@@ -6780,12 +7110,12 @@ export declare const UpdateUserSettingsRequest: Readonly<{
6780
7110
  * Create a frozen instance of {@link UpdateUserSettingsRequest}, with defaults specified
6781
7111
  * in Rust, in the {@link breez_sdk_spark} crate.
6782
7112
  */
6783
- create: (partial: Partial<UpdateUserSettingsRequest> & Required<Omit<UpdateUserSettingsRequest, "stableBalanceActiveLabel">>) => UpdateUserSettingsRequest;
7113
+ create: (partial: Partial<UpdateUserSettingsRequest> & Required<Omit<UpdateUserSettingsRequest, "stableBalanceActiveLabel" | "sparkMasterIdentityPublicKey">>) => UpdateUserSettingsRequest;
6784
7114
  /**
6785
7115
  * Create a frozen instance of {@link UpdateUserSettingsRequest}, with defaults specified
6786
7116
  * in Rust, in the {@link breez_sdk_spark} crate.
6787
7117
  */
6788
- new: (partial: Partial<UpdateUserSettingsRequest> & Required<Omit<UpdateUserSettingsRequest, "stableBalanceActiveLabel">>) => UpdateUserSettingsRequest;
7118
+ new: (partial: Partial<UpdateUserSettingsRequest> & Required<Omit<UpdateUserSettingsRequest, "stableBalanceActiveLabel" | "sparkMasterIdentityPublicKey">>) => UpdateUserSettingsRequest;
6789
7119
  /**
6790
7120
  * Defaults specified in the {@link breez_sdk_spark} crate.
6791
7121
  */
@@ -6832,6 +7162,11 @@ export type UserSettings = {
6832
7162
  * The label of the currently active stable balance token, or `None` if deactivated.
6833
7163
  */
6834
7164
  stableBalanceActiveLabel: string | undefined;
7165
+ /**
7166
+ * The hex encoded public key designated as this wallet's master identity
7167
+ * key, or `None` if none is designated.
7168
+ */
7169
+ sparkMasterIdentityPublicKey: string | undefined;
6835
7170
  };
6836
7171
  /**
6837
7172
  * Generated factory for {@link UserSettings} record objects.
@@ -7932,6 +8267,24 @@ export declare const ChainServiceError: Readonly<{
7932
8267
  };
7933
8268
  }>;
7934
8269
  export type ChainServiceError = InstanceType<(typeof ChainServiceError)[keyof Omit<typeof ChainServiceError, 'instanceOf'>]>;
8270
+ /**
8271
+ * Whether a transaction in the exit path is already on-chain.
8272
+ */
8273
+ export declare enum ConfirmationStatus {
8274
+ /**
8275
+ * This transaction is confirmed in a block. It needs no action.
8276
+ */
8277
+ Confirmed = 0,
8278
+ /**
8279
+ * This transaction is not yet confirmed. Mempool state is not consulted.
8280
+ */
8281
+ Unconfirmed = 1,
8282
+ /**
8283
+ * The on-chain status could not be determined (the chain service errored).
8284
+ * Broadcasting may fail if a conflicting transaction already landed.
8285
+ */
8286
+ Unverified = 2
8287
+ }
7935
8288
  export declare enum ConversionChain_Tags {
7936
8289
  Spark = "Spark",
7937
8290
  Lightning = "Lightning",
@@ -8820,90 +9173,383 @@ export declare const ConversionType: Readonly<{
8820
9173
  };
8821
9174
  }>;
8822
9175
  export type ConversionType = InstanceType<(typeof ConversionType)[keyof Omit<typeof ConversionType, 'instanceOf'>]>;
8823
- export declare enum CrossChainAddressFamily {
8824
- Evm = 0,
8825
- Solana = 1,
8826
- Tron = 2
8827
- }
8828
- /**
8829
- * How the caller wants fees handled against the request `amount`.
8830
- *
8831
- * - `FeesExcluded`: `amount` is the provider invoice/deposit target; the
8832
- * wallet pays `amount + source_transfer_fee_sats` in total.
8833
- * - `FeesIncluded`: `amount` is the wallet's total sats budget; the provider
8834
- * leg is sized so `amount_in + source_transfer_fee_sats <= amount`.
8835
- */
8836
- export declare enum CrossChainFeeMode {
8837
- FeesExcluded = 0,
8838
- FeesIncluded = 1
8839
- }
8840
- export declare enum CrossChainProvider {
8841
- Orchestra = 0,
8842
- Boltz = 1
8843
- }
8844
- export declare enum CrossChainProviderContext_Tags {
8845
- Orchestra = "Orchestra",
8846
- Boltz = "Boltz"
9176
+ export declare enum CpfpFundingKind_Tags {
9177
+ P2wpkh = "P2wpkh",
9178
+ P2tr = "P2tr",
9179
+ Custom = "Custom"
8847
9180
  }
8848
9181
  /**
8849
- * Provider-internal state produced by `prepare` and consumed by `send`.
8850
- * Typed per provider so the send stage can resume without re-quoting and
8851
- * without a serde round-trip. Callers should round-trip this value as-is.
9182
+ * The kind of UTXO that will fund an exit's fees.
8852
9183
  */
8853
- export declare const CrossChainProviderContext: Readonly<{
8854
- instanceOf: (obj: any) => obj is CrossChainProviderContext;
8855
- Orchestra: {
8856
- new (inner: {
8857
- /**
8858
- * Orchestra quote id, passed back on `/submit`.
8859
- */ quoteId: string;
8860
- /**
8861
- * Spark address Orchestra expects the deposit transfer to land on.
8862
- */ depositAddress: string;
8863
- /**
8864
- * Spark-side deposit amount in the route's source-asset base units.
8865
- */ depositAmount: U128;
8866
- }): {
8867
- readonly tag: CrossChainProviderContext_Tags.Orchestra;
8868
- readonly inner: Readonly<{
8869
- quoteId: string;
8870
- depositAddress: string;
8871
- depositAmount: U128;
8872
- }>;
9184
+ export declare const CpfpFundingKind: Readonly<{
9185
+ instanceOf: (obj: any) => obj is CpfpFundingKind;
9186
+ P2wpkh: {
9187
+ new (): {
9188
+ readonly tag: CpfpFundingKind_Tags.P2wpkh;
8873
9189
  /**
8874
9190
  * @private
8875
9191
  * This field is private and should not be used, use `tag` instead.
8876
9192
  */
8877
- readonly [uniffiTypeNameSymbol]: "CrossChainProviderContext";
9193
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
8878
9194
  };
8879
- "new"(inner: {
8880
- /**
8881
- * Orchestra quote id, passed back on `/submit`.
8882
- */ quoteId: string;
8883
- /**
8884
- * Spark address Orchestra expects the deposit transfer to land on.
8885
- */ depositAddress: string;
8886
- /**
8887
- * Spark-side deposit amount in the route's source-asset base units.
8888
- */ depositAmount: U128;
8889
- }): {
8890
- readonly tag: CrossChainProviderContext_Tags.Orchestra;
8891
- readonly inner: Readonly<{
8892
- quoteId: string;
8893
- depositAddress: string;
8894
- depositAmount: U128;
8895
- }>;
9195
+ "new"(): {
9196
+ readonly tag: CpfpFundingKind_Tags.P2wpkh;
8896
9197
  /**
8897
9198
  * @private
8898
9199
  * This field is private and should not be used, use `tag` instead.
8899
9200
  */
8900
- readonly [uniffiTypeNameSymbol]: "CrossChainProviderContext";
9201
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
8901
9202
  };
8902
9203
  instanceOf(obj: any): obj is {
8903
- readonly tag: CrossChainProviderContext_Tags.Orchestra;
8904
- readonly inner: Readonly<{
8905
- quoteId: string;
8906
- depositAddress: string;
9204
+ readonly tag: CpfpFundingKind_Tags.P2wpkh;
9205
+ /**
9206
+ * @private
9207
+ * This field is private and should not be used, use `tag` instead.
9208
+ */
9209
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9210
+ };
9211
+ };
9212
+ P2tr: {
9213
+ new (): {
9214
+ readonly tag: CpfpFundingKind_Tags.P2tr;
9215
+ /**
9216
+ * @private
9217
+ * This field is private and should not be used, use `tag` instead.
9218
+ */
9219
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9220
+ };
9221
+ "new"(): {
9222
+ readonly tag: CpfpFundingKind_Tags.P2tr;
9223
+ /**
9224
+ * @private
9225
+ * This field is private and should not be used, use `tag` instead.
9226
+ */
9227
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9228
+ };
9229
+ instanceOf(obj: any): obj is {
9230
+ readonly tag: CpfpFundingKind_Tags.P2tr;
9231
+ /**
9232
+ * @private
9233
+ * This field is private and should not be used, use `tag` instead.
9234
+ */
9235
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9236
+ };
9237
+ };
9238
+ Custom: {
9239
+ new (inner: {
9240
+ scriptPubkeyHex: string;
9241
+ signedInputWeight: bigint;
9242
+ }): {
9243
+ readonly tag: CpfpFundingKind_Tags.Custom;
9244
+ readonly inner: Readonly<{
9245
+ scriptPubkeyHex: string;
9246
+ signedInputWeight: bigint;
9247
+ }>;
9248
+ /**
9249
+ * @private
9250
+ * This field is private and should not be used, use `tag` instead.
9251
+ */
9252
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9253
+ };
9254
+ "new"(inner: {
9255
+ scriptPubkeyHex: string;
9256
+ signedInputWeight: bigint;
9257
+ }): {
9258
+ readonly tag: CpfpFundingKind_Tags.Custom;
9259
+ readonly inner: Readonly<{
9260
+ scriptPubkeyHex: string;
9261
+ signedInputWeight: bigint;
9262
+ }>;
9263
+ /**
9264
+ * @private
9265
+ * This field is private and should not be used, use `tag` instead.
9266
+ */
9267
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9268
+ };
9269
+ instanceOf(obj: any): obj is {
9270
+ readonly tag: CpfpFundingKind_Tags.Custom;
9271
+ readonly inner: Readonly<{
9272
+ scriptPubkeyHex: string;
9273
+ signedInputWeight: bigint;
9274
+ }>;
9275
+ /**
9276
+ * @private
9277
+ * This field is private and should not be used, use `tag` instead.
9278
+ */
9279
+ readonly [uniffiTypeNameSymbol]: "CpfpFundingKind";
9280
+ };
9281
+ };
9282
+ }>;
9283
+ /**
9284
+ * The kind of UTXO that will fund an exit's fees.
9285
+ */
9286
+ export type CpfpFundingKind = InstanceType<(typeof CpfpFundingKind)[keyof Omit<typeof CpfpFundingKind, 'instanceOf'>]>;
9287
+ export declare enum CpfpInput_Tags {
9288
+ P2wpkh = "P2wpkh",
9289
+ P2tr = "P2tr",
9290
+ Custom = "Custom"
9291
+ }
9292
+ /**
9293
+ * A funding UTXO that pays the on-chain fees of a unilateral exit.
9294
+ */
9295
+ export declare const CpfpInput: Readonly<{
9296
+ instanceOf: (obj: any) => obj is CpfpInput;
9297
+ P2wpkh: {
9298
+ new (inner: {
9299
+ txid: string;
9300
+ vout: number;
9301
+ value: bigint;
9302
+ pubkey: string;
9303
+ }): {
9304
+ readonly tag: CpfpInput_Tags.P2wpkh;
9305
+ readonly inner: Readonly<{
9306
+ txid: string;
9307
+ vout: number;
9308
+ value: bigint;
9309
+ pubkey: string;
9310
+ }>;
9311
+ /**
9312
+ * @private
9313
+ * This field is private and should not be used, use `tag` instead.
9314
+ */
9315
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9316
+ };
9317
+ "new"(inner: {
9318
+ txid: string;
9319
+ vout: number;
9320
+ value: bigint;
9321
+ pubkey: string;
9322
+ }): {
9323
+ readonly tag: CpfpInput_Tags.P2wpkh;
9324
+ readonly inner: Readonly<{
9325
+ txid: string;
9326
+ vout: number;
9327
+ value: bigint;
9328
+ pubkey: string;
9329
+ }>;
9330
+ /**
9331
+ * @private
9332
+ * This field is private and should not be used, use `tag` instead.
9333
+ */
9334
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9335
+ };
9336
+ instanceOf(obj: any): obj is {
9337
+ readonly tag: CpfpInput_Tags.P2wpkh;
9338
+ readonly inner: Readonly<{
9339
+ txid: string;
9340
+ vout: number;
9341
+ value: bigint;
9342
+ pubkey: string;
9343
+ }>;
9344
+ /**
9345
+ * @private
9346
+ * This field is private and should not be used, use `tag` instead.
9347
+ */
9348
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9349
+ };
9350
+ };
9351
+ P2tr: {
9352
+ new (inner: {
9353
+ txid: string;
9354
+ vout: number;
9355
+ value: bigint;
9356
+ pubkey: string;
9357
+ }): {
9358
+ readonly tag: CpfpInput_Tags.P2tr;
9359
+ readonly inner: Readonly<{
9360
+ txid: string;
9361
+ vout: number;
9362
+ value: bigint;
9363
+ pubkey: string;
9364
+ }>;
9365
+ /**
9366
+ * @private
9367
+ * This field is private and should not be used, use `tag` instead.
9368
+ */
9369
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9370
+ };
9371
+ "new"(inner: {
9372
+ txid: string;
9373
+ vout: number;
9374
+ value: bigint;
9375
+ pubkey: string;
9376
+ }): {
9377
+ readonly tag: CpfpInput_Tags.P2tr;
9378
+ readonly inner: Readonly<{
9379
+ txid: string;
9380
+ vout: number;
9381
+ value: bigint;
9382
+ pubkey: string;
9383
+ }>;
9384
+ /**
9385
+ * @private
9386
+ * This field is private and should not be used, use `tag` instead.
9387
+ */
9388
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9389
+ };
9390
+ instanceOf(obj: any): obj is {
9391
+ readonly tag: CpfpInput_Tags.P2tr;
9392
+ readonly inner: Readonly<{
9393
+ txid: string;
9394
+ vout: number;
9395
+ value: bigint;
9396
+ pubkey: string;
9397
+ }>;
9398
+ /**
9399
+ * @private
9400
+ * This field is private and should not be used, use `tag` instead.
9401
+ */
9402
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9403
+ };
9404
+ };
9405
+ Custom: {
9406
+ new (inner: {
9407
+ txid: string;
9408
+ vout: number;
9409
+ value: bigint;
9410
+ scriptPubkeyHex: string;
9411
+ signedInputWeight: bigint;
9412
+ }): {
9413
+ readonly tag: CpfpInput_Tags.Custom;
9414
+ readonly inner: Readonly<{
9415
+ txid: string;
9416
+ vout: number;
9417
+ value: bigint;
9418
+ scriptPubkeyHex: string;
9419
+ signedInputWeight: bigint;
9420
+ }>;
9421
+ /**
9422
+ * @private
9423
+ * This field is private and should not be used, use `tag` instead.
9424
+ */
9425
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9426
+ };
9427
+ "new"(inner: {
9428
+ txid: string;
9429
+ vout: number;
9430
+ value: bigint;
9431
+ scriptPubkeyHex: string;
9432
+ signedInputWeight: bigint;
9433
+ }): {
9434
+ readonly tag: CpfpInput_Tags.Custom;
9435
+ readonly inner: Readonly<{
9436
+ txid: string;
9437
+ vout: number;
9438
+ value: bigint;
9439
+ scriptPubkeyHex: string;
9440
+ signedInputWeight: bigint;
9441
+ }>;
9442
+ /**
9443
+ * @private
9444
+ * This field is private and should not be used, use `tag` instead.
9445
+ */
9446
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9447
+ };
9448
+ instanceOf(obj: any): obj is {
9449
+ readonly tag: CpfpInput_Tags.Custom;
9450
+ readonly inner: Readonly<{
9451
+ txid: string;
9452
+ vout: number;
9453
+ value: bigint;
9454
+ scriptPubkeyHex: string;
9455
+ signedInputWeight: bigint;
9456
+ }>;
9457
+ /**
9458
+ * @private
9459
+ * This field is private and should not be used, use `tag` instead.
9460
+ */
9461
+ readonly [uniffiTypeNameSymbol]: "CpfpInput";
9462
+ };
9463
+ };
9464
+ }>;
9465
+ /**
9466
+ * A funding UTXO that pays the on-chain fees of a unilateral exit.
9467
+ */
9468
+ export type CpfpInput = InstanceType<(typeof CpfpInput)[keyof Omit<typeof CpfpInput, 'instanceOf'>]>;
9469
+ export declare enum CrossChainAddressFamily {
9470
+ Evm = 0,
9471
+ Solana = 1,
9472
+ Tron = 2
9473
+ }
9474
+ /**
9475
+ * How the caller wants fees handled against the request `amount`.
9476
+ *
9477
+ * - `FeesExcluded`: `amount` is the provider invoice/deposit target; the
9478
+ * wallet pays `amount + source_transfer_fee_sats` in total.
9479
+ * - `FeesIncluded`: `amount` is the wallet's total sats budget; the provider
9480
+ * leg is sized so `amount_in + source_transfer_fee_sats <= amount`.
9481
+ */
9482
+ export declare enum CrossChainFeeMode {
9483
+ FeesExcluded = 0,
9484
+ FeesIncluded = 1
9485
+ }
9486
+ export declare enum CrossChainProvider {
9487
+ Orchestra = 0,
9488
+ Boltz = 1
9489
+ }
9490
+ export declare enum CrossChainProviderContext_Tags {
9491
+ Orchestra = "Orchestra",
9492
+ Boltz = "Boltz"
9493
+ }
9494
+ /**
9495
+ * Provider-internal state produced by `prepare` and consumed by `send`.
9496
+ * Typed per provider so the send stage can resume without re-quoting and
9497
+ * without a serde round-trip. Callers should round-trip this value as-is.
9498
+ */
9499
+ export declare const CrossChainProviderContext: Readonly<{
9500
+ instanceOf: (obj: any) => obj is CrossChainProviderContext;
9501
+ Orchestra: {
9502
+ new (inner: {
9503
+ /**
9504
+ * Orchestra quote id, passed back on `/submit`.
9505
+ */ quoteId: string;
9506
+ /**
9507
+ * Spark address Orchestra expects the deposit transfer to land on.
9508
+ */ depositAddress: string;
9509
+ /**
9510
+ * Spark-side deposit amount in the route's source-asset base units.
9511
+ */ depositAmount: U128;
9512
+ }): {
9513
+ readonly tag: CrossChainProviderContext_Tags.Orchestra;
9514
+ readonly inner: Readonly<{
9515
+ quoteId: string;
9516
+ depositAddress: string;
9517
+ depositAmount: U128;
9518
+ }>;
9519
+ /**
9520
+ * @private
9521
+ * This field is private and should not be used, use `tag` instead.
9522
+ */
9523
+ readonly [uniffiTypeNameSymbol]: "CrossChainProviderContext";
9524
+ };
9525
+ "new"(inner: {
9526
+ /**
9527
+ * Orchestra quote id, passed back on `/submit`.
9528
+ */ quoteId: string;
9529
+ /**
9530
+ * Spark address Orchestra expects the deposit transfer to land on.
9531
+ */ depositAddress: string;
9532
+ /**
9533
+ * Spark-side deposit amount in the route's source-asset base units.
9534
+ */ depositAmount: U128;
9535
+ }): {
9536
+ readonly tag: CrossChainProviderContext_Tags.Orchestra;
9537
+ readonly inner: Readonly<{
9538
+ quoteId: string;
9539
+ depositAddress: string;
9540
+ depositAmount: U128;
9541
+ }>;
9542
+ /**
9543
+ * @private
9544
+ * This field is private and should not be used, use `tag` instead.
9545
+ */
9546
+ readonly [uniffiTypeNameSymbol]: "CrossChainProviderContext";
9547
+ };
9548
+ instanceOf(obj: any): obj is {
9549
+ readonly tag: CrossChainProviderContext_Tags.Orchestra;
9550
+ readonly inner: Readonly<{
9551
+ quoteId: string;
9552
+ depositAddress: string;
8907
9553
  depositAmount: U128;
8908
9554
  }>;
8909
9555
  /**
@@ -9412,6 +10058,85 @@ export declare enum ErrorKind {
9412
10058
  */
9413
10059
  Internal = 8
9414
10060
  }
10061
+ export declare enum ExitLeafSelection_Tags {
10062
+ Auto = "Auto",
10063
+ Specific = "Specific"
10064
+ }
10065
+ /**
10066
+ * Which leaves to exit.
10067
+ */
10068
+ export declare const ExitLeafSelection: Readonly<{
10069
+ instanceOf: (obj: any) => obj is ExitLeafSelection;
10070
+ Auto: {
10071
+ new (): {
10072
+ readonly tag: ExitLeafSelection_Tags.Auto;
10073
+ /**
10074
+ * @private
10075
+ * This field is private and should not be used, use `tag` instead.
10076
+ */
10077
+ readonly [uniffiTypeNameSymbol]: "ExitLeafSelection";
10078
+ };
10079
+ "new"(): {
10080
+ readonly tag: ExitLeafSelection_Tags.Auto;
10081
+ /**
10082
+ * @private
10083
+ * This field is private and should not be used, use `tag` instead.
10084
+ */
10085
+ readonly [uniffiTypeNameSymbol]: "ExitLeafSelection";
10086
+ };
10087
+ instanceOf(obj: any): obj is {
10088
+ readonly tag: ExitLeafSelection_Tags.Auto;
10089
+ /**
10090
+ * @private
10091
+ * This field is private and should not be used, use `tag` instead.
10092
+ */
10093
+ readonly [uniffiTypeNameSymbol]: "ExitLeafSelection";
10094
+ };
10095
+ };
10096
+ Specific: {
10097
+ new (inner: {
10098
+ leafIds: Array<string>;
10099
+ }): {
10100
+ readonly tag: ExitLeafSelection_Tags.Specific;
10101
+ readonly inner: Readonly<{
10102
+ leafIds: Array<string>;
10103
+ }>;
10104
+ /**
10105
+ * @private
10106
+ * This field is private and should not be used, use `tag` instead.
10107
+ */
10108
+ readonly [uniffiTypeNameSymbol]: "ExitLeafSelection";
10109
+ };
10110
+ "new"(inner: {
10111
+ leafIds: Array<string>;
10112
+ }): {
10113
+ readonly tag: ExitLeafSelection_Tags.Specific;
10114
+ readonly inner: Readonly<{
10115
+ leafIds: Array<string>;
10116
+ }>;
10117
+ /**
10118
+ * @private
10119
+ * This field is private and should not be used, use `tag` instead.
10120
+ */
10121
+ readonly [uniffiTypeNameSymbol]: "ExitLeafSelection";
10122
+ };
10123
+ instanceOf(obj: any): obj is {
10124
+ readonly tag: ExitLeafSelection_Tags.Specific;
10125
+ readonly inner: Readonly<{
10126
+ leafIds: Array<string>;
10127
+ }>;
10128
+ /**
10129
+ * @private
10130
+ * This field is private and should not be used, use `tag` instead.
10131
+ */
10132
+ readonly [uniffiTypeNameSymbol]: "ExitLeafSelection";
10133
+ };
10134
+ };
10135
+ }>;
10136
+ /**
10137
+ * Which leaves to exit.
10138
+ */
10139
+ export type ExitLeafSelection = InstanceType<(typeof ExitLeafSelection)[keyof Omit<typeof ExitLeafSelection, 'instanceOf'>]>;
9415
10140
  export declare enum ExternalFrostDerivation_Tags {
9416
10141
  SigningLeaf = "SigningLeaf",
9417
10142
  StaticDeposit = "StaticDeposit",
@@ -10488,6 +11213,95 @@ export declare const OptimizationOutcome: Readonly<{
10488
11213
  * ```
10489
11214
  */
10490
11215
  export type OptimizationOutcome = InstanceType<(typeof OptimizationOutcome)[keyof Omit<typeof OptimizationOutcome, 'instanceOf'>]>;
11216
+ export declare enum Outspend_Tags {
11217
+ Unspent = "Unspent",
11218
+ Spent = "Spent"
11219
+ }
11220
+ /**
11221
+ * The spend status of a transaction output.
11222
+ */
11223
+ export declare const Outspend: Readonly<{
11224
+ instanceOf: (obj: any) => obj is Outspend;
11225
+ Unspent: {
11226
+ new (): {
11227
+ readonly tag: Outspend_Tags.Unspent;
11228
+ /**
11229
+ * @private
11230
+ * This field is private and should not be used, use `tag` instead.
11231
+ */
11232
+ readonly [uniffiTypeNameSymbol]: "Outspend";
11233
+ };
11234
+ "new"(): {
11235
+ readonly tag: Outspend_Tags.Unspent;
11236
+ /**
11237
+ * @private
11238
+ * This field is private and should not be used, use `tag` instead.
11239
+ */
11240
+ readonly [uniffiTypeNameSymbol]: "Outspend";
11241
+ };
11242
+ instanceOf(obj: any): obj is {
11243
+ readonly tag: Outspend_Tags.Unspent;
11244
+ /**
11245
+ * @private
11246
+ * This field is private and should not be used, use `tag` instead.
11247
+ */
11248
+ readonly [uniffiTypeNameSymbol]: "Outspend";
11249
+ };
11250
+ };
11251
+ Spent: {
11252
+ new (inner: {
11253
+ txid: string;
11254
+ vin: number;
11255
+ status: TxStatus;
11256
+ }): {
11257
+ readonly tag: Outspend_Tags.Spent;
11258
+ readonly inner: Readonly<{
11259
+ txid: string;
11260
+ vin: number;
11261
+ status: TxStatus;
11262
+ }>;
11263
+ /**
11264
+ * @private
11265
+ * This field is private and should not be used, use `tag` instead.
11266
+ */
11267
+ readonly [uniffiTypeNameSymbol]: "Outspend";
11268
+ };
11269
+ "new"(inner: {
11270
+ txid: string;
11271
+ vin: number;
11272
+ status: TxStatus;
11273
+ }): {
11274
+ readonly tag: Outspend_Tags.Spent;
11275
+ readonly inner: Readonly<{
11276
+ txid: string;
11277
+ vin: number;
11278
+ status: TxStatus;
11279
+ }>;
11280
+ /**
11281
+ * @private
11282
+ * This field is private and should not be used, use `tag` instead.
11283
+ */
11284
+ readonly [uniffiTypeNameSymbol]: "Outspend";
11285
+ };
11286
+ instanceOf(obj: any): obj is {
11287
+ readonly tag: Outspend_Tags.Spent;
11288
+ readonly inner: Readonly<{
11289
+ txid: string;
11290
+ vin: number;
11291
+ status: TxStatus;
11292
+ }>;
11293
+ /**
11294
+ * @private
11295
+ * This field is private and should not be used, use `tag` instead.
11296
+ */
11297
+ readonly [uniffiTypeNameSymbol]: "Outspend";
11298
+ };
11299
+ };
11300
+ }>;
11301
+ /**
11302
+ * The spend status of a transaction output.
11303
+ */
11304
+ export type Outspend = InstanceType<(typeof Outspend)[keyof Omit<typeof Outspend, 'instanceOf'>]>;
10491
11305
  export declare enum PasskeyAvailability_Tags {
10492
11306
  Available = "Available",
10493
11307
  PrfUnsupported = "PrfUnsupported",
@@ -13323,6 +14137,8 @@ export declare enum SdkError_Tags {
13323
14137
  Signer = "Signer",
13324
14138
  OptimizationAlreadyRunning = "OptimizationAlreadyRunning",
13325
14139
  OptimizationCancelled = "OptimizationCancelled",
14140
+ InsufficientCpfpFunds = "InsufficientCpfpFunds",
14141
+ FundingUtxoConflict = "FundingUtxoConflict",
13326
14142
  Generic = "Generic"
13327
14143
  }
13328
14144
  /**
@@ -14038,9 +14854,149 @@ export declare const SdkError: Readonly<{
14038
14854
  stack?: string;
14039
14855
  cause?: unknown;
14040
14856
  };
14041
- "new"(v0: string): {
14042
- readonly tag: SdkError_Tags.LnurlError;
14043
- readonly inner: Readonly<[string]>;
14857
+ "new"(v0: string): {
14858
+ readonly tag: SdkError_Tags.LnurlError;
14859
+ readonly inner: Readonly<[string]>;
14860
+ /**
14861
+ * @private
14862
+ * This field is private and should not be used, use `tag` instead.
14863
+ */
14864
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14865
+ name: string;
14866
+ message: string;
14867
+ stack?: string;
14868
+ cause?: unknown;
14869
+ };
14870
+ instanceOf(obj: any): obj is {
14871
+ readonly tag: SdkError_Tags.LnurlError;
14872
+ readonly inner: Readonly<[string]>;
14873
+ /**
14874
+ * @private
14875
+ * This field is private and should not be used, use `tag` instead.
14876
+ */
14877
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14878
+ name: string;
14879
+ message: string;
14880
+ stack?: string;
14881
+ cause?: unknown;
14882
+ };
14883
+ hasInner(obj: any): obj is {
14884
+ readonly tag: SdkError_Tags.LnurlError;
14885
+ readonly inner: Readonly<[string]>;
14886
+ /**
14887
+ * @private
14888
+ * This field is private and should not be used, use `tag` instead.
14889
+ */
14890
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14891
+ name: string;
14892
+ message: string;
14893
+ stack?: string;
14894
+ cause?: unknown;
14895
+ };
14896
+ getInner(obj: {
14897
+ readonly tag: SdkError_Tags.LnurlError;
14898
+ readonly inner: Readonly<[string]>;
14899
+ /**
14900
+ * @private
14901
+ * This field is private and should not be used, use `tag` instead.
14902
+ */
14903
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14904
+ name: string;
14905
+ message: string;
14906
+ stack?: string;
14907
+ cause?: unknown;
14908
+ }): Readonly<[string]>;
14909
+ isError(error: unknown): error is Error;
14910
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
14911
+ prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
14912
+ stackTraceLimit: number;
14913
+ };
14914
+ Signer: {
14915
+ new (v0: string): {
14916
+ readonly tag: SdkError_Tags.Signer;
14917
+ readonly inner: Readonly<[string]>;
14918
+ /**
14919
+ * @private
14920
+ * This field is private and should not be used, use `tag` instead.
14921
+ */
14922
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14923
+ name: string;
14924
+ message: string;
14925
+ stack?: string;
14926
+ cause?: unknown;
14927
+ };
14928
+ "new"(v0: string): {
14929
+ readonly tag: SdkError_Tags.Signer;
14930
+ readonly inner: Readonly<[string]>;
14931
+ /**
14932
+ * @private
14933
+ * This field is private and should not be used, use `tag` instead.
14934
+ */
14935
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14936
+ name: string;
14937
+ message: string;
14938
+ stack?: string;
14939
+ cause?: unknown;
14940
+ };
14941
+ instanceOf(obj: any): obj is {
14942
+ readonly tag: SdkError_Tags.Signer;
14943
+ readonly inner: Readonly<[string]>;
14944
+ /**
14945
+ * @private
14946
+ * This field is private and should not be used, use `tag` instead.
14947
+ */
14948
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14949
+ name: string;
14950
+ message: string;
14951
+ stack?: string;
14952
+ cause?: unknown;
14953
+ };
14954
+ hasInner(obj: any): obj is {
14955
+ readonly tag: SdkError_Tags.Signer;
14956
+ readonly inner: Readonly<[string]>;
14957
+ /**
14958
+ * @private
14959
+ * This field is private and should not be used, use `tag` instead.
14960
+ */
14961
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14962
+ name: string;
14963
+ message: string;
14964
+ stack?: string;
14965
+ cause?: unknown;
14966
+ };
14967
+ getInner(obj: {
14968
+ readonly tag: SdkError_Tags.Signer;
14969
+ readonly inner: Readonly<[string]>;
14970
+ /**
14971
+ * @private
14972
+ * This field is private and should not be used, use `tag` instead.
14973
+ */
14974
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14975
+ name: string;
14976
+ message: string;
14977
+ stack?: string;
14978
+ cause?: unknown;
14979
+ }): Readonly<[string]>;
14980
+ isError(error: unknown): error is Error;
14981
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
14982
+ prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
14983
+ stackTraceLimit: number;
14984
+ };
14985
+ OptimizationAlreadyRunning: {
14986
+ new (): {
14987
+ readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
14988
+ /**
14989
+ * @private
14990
+ * This field is private and should not be used, use `tag` instead.
14991
+ */
14992
+ readonly [uniffiTypeNameSymbol]: "SdkError";
14993
+ name: string;
14994
+ message: string;
14995
+ stack?: string;
14996
+ cause?: unknown;
14997
+ };
14998
+ "new"(): {
14999
+ readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
14044
15000
  /**
14045
15001
  * @private
14046
15002
  * This field is private and should not be used, use `tag` instead.
@@ -14052,8 +15008,7 @@ export declare const SdkError: Readonly<{
14052
15008
  cause?: unknown;
14053
15009
  };
14054
15010
  instanceOf(obj: any): obj is {
14055
- readonly tag: SdkError_Tags.LnurlError;
14056
- readonly inner: Readonly<[string]>;
15011
+ readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
14057
15012
  /**
14058
15013
  * @private
14059
15014
  * This field is private and should not be used, use `tag` instead.
@@ -14065,8 +15020,7 @@ export declare const SdkError: Readonly<{
14065
15020
  cause?: unknown;
14066
15021
  };
14067
15022
  hasInner(obj: any): obj is {
14068
- readonly tag: SdkError_Tags.LnurlError;
14069
- readonly inner: Readonly<[string]>;
15023
+ readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
14070
15024
  /**
14071
15025
  * @private
14072
15026
  * This field is private and should not be used, use `tag` instead.
@@ -14077,28 +15031,14 @@ export declare const SdkError: Readonly<{
14077
15031
  stack?: string;
14078
15032
  cause?: unknown;
14079
15033
  };
14080
- getInner(obj: {
14081
- readonly tag: SdkError_Tags.LnurlError;
14082
- readonly inner: Readonly<[string]>;
14083
- /**
14084
- * @private
14085
- * This field is private and should not be used, use `tag` instead.
14086
- */
14087
- readonly [uniffiTypeNameSymbol]: "SdkError";
14088
- name: string;
14089
- message: string;
14090
- stack?: string;
14091
- cause?: unknown;
14092
- }): Readonly<[string]>;
14093
15034
  isError(error: unknown): error is Error;
14094
15035
  captureStackTrace(targetObject: object, constructorOpt?: Function): void;
14095
15036
  prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
14096
15037
  stackTraceLimit: number;
14097
15038
  };
14098
- Signer: {
14099
- new (v0: string): {
14100
- readonly tag: SdkError_Tags.Signer;
14101
- readonly inner: Readonly<[string]>;
15039
+ OptimizationCancelled: {
15040
+ new (): {
15041
+ readonly tag: SdkError_Tags.OptimizationCancelled;
14102
15042
  /**
14103
15043
  * @private
14104
15044
  * This field is private and should not be used, use `tag` instead.
@@ -14109,9 +15049,8 @@ export declare const SdkError: Readonly<{
14109
15049
  stack?: string;
14110
15050
  cause?: unknown;
14111
15051
  };
14112
- "new"(v0: string): {
14113
- readonly tag: SdkError_Tags.Signer;
14114
- readonly inner: Readonly<[string]>;
15052
+ "new"(): {
15053
+ readonly tag: SdkError_Tags.OptimizationCancelled;
14115
15054
  /**
14116
15055
  * @private
14117
15056
  * This field is private and should not be used, use `tag` instead.
@@ -14123,8 +15062,7 @@ export declare const SdkError: Readonly<{
14123
15062
  cause?: unknown;
14124
15063
  };
14125
15064
  instanceOf(obj: any): obj is {
14126
- readonly tag: SdkError_Tags.Signer;
14127
- readonly inner: Readonly<[string]>;
15065
+ readonly tag: SdkError_Tags.OptimizationCancelled;
14128
15066
  /**
14129
15067
  * @private
14130
15068
  * This field is private and should not be used, use `tag` instead.
@@ -14136,8 +15074,7 @@ export declare const SdkError: Readonly<{
14136
15074
  cause?: unknown;
14137
15075
  };
14138
15076
  hasInner(obj: any): obj is {
14139
- readonly tag: SdkError_Tags.Signer;
14140
- readonly inner: Readonly<[string]>;
15077
+ readonly tag: SdkError_Tags.OptimizationCancelled;
14141
15078
  /**
14142
15079
  * @private
14143
15080
  * This field is private and should not be used, use `tag` instead.
@@ -14148,9 +15085,19 @@ export declare const SdkError: Readonly<{
14148
15085
  stack?: string;
14149
15086
  cause?: unknown;
14150
15087
  };
14151
- getInner(obj: {
14152
- readonly tag: SdkError_Tags.Signer;
14153
- readonly inner: Readonly<[string]>;
15088
+ isError(error: unknown): error is Error;
15089
+ captureStackTrace(targetObject: object, constructorOpt?: Function): void;
15090
+ prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
15091
+ stackTraceLimit: number;
15092
+ };
15093
+ InsufficientCpfpFunds: {
15094
+ new (inner: {
15095
+ requiredSat: bigint;
15096
+ }): {
15097
+ readonly tag: SdkError_Tags.InsufficientCpfpFunds;
15098
+ readonly inner: Readonly<{
15099
+ requiredSat: bigint;
15100
+ }>;
14154
15101
  /**
14155
15102
  * @private
14156
15103
  * This field is private and should not be used, use `tag` instead.
@@ -14160,15 +15107,14 @@ export declare const SdkError: Readonly<{
14160
15107
  message: string;
14161
15108
  stack?: string;
14162
15109
  cause?: unknown;
14163
- }): Readonly<[string]>;
14164
- isError(error: unknown): error is Error;
14165
- captureStackTrace(targetObject: object, constructorOpt?: Function): void;
14166
- prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
14167
- stackTraceLimit: number;
14168
- };
14169
- OptimizationAlreadyRunning: {
14170
- new (): {
14171
- readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
15110
+ };
15111
+ "new"(inner: {
15112
+ requiredSat: bigint;
15113
+ }): {
15114
+ readonly tag: SdkError_Tags.InsufficientCpfpFunds;
15115
+ readonly inner: Readonly<{
15116
+ requiredSat: bigint;
15117
+ }>;
14172
15118
  /**
14173
15119
  * @private
14174
15120
  * This field is private and should not be used, use `tag` instead.
@@ -14179,8 +15125,11 @@ export declare const SdkError: Readonly<{
14179
15125
  stack?: string;
14180
15126
  cause?: unknown;
14181
15127
  };
14182
- "new"(): {
14183
- readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
15128
+ instanceOf(obj: any): obj is {
15129
+ readonly tag: SdkError_Tags.InsufficientCpfpFunds;
15130
+ readonly inner: Readonly<{
15131
+ requiredSat: bigint;
15132
+ }>;
14184
15133
  /**
14185
15134
  * @private
14186
15135
  * This field is private and should not be used, use `tag` instead.
@@ -14191,8 +15140,11 @@ export declare const SdkError: Readonly<{
14191
15140
  stack?: string;
14192
15141
  cause?: unknown;
14193
15142
  };
14194
- instanceOf(obj: any): obj is {
14195
- readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
15143
+ hasInner(obj: any): obj is {
15144
+ readonly tag: SdkError_Tags.InsufficientCpfpFunds;
15145
+ readonly inner: Readonly<{
15146
+ requiredSat: bigint;
15147
+ }>;
14196
15148
  /**
14197
15149
  * @private
14198
15150
  * This field is private and should not be used, use `tag` instead.
@@ -14203,8 +15155,11 @@ export declare const SdkError: Readonly<{
14203
15155
  stack?: string;
14204
15156
  cause?: unknown;
14205
15157
  };
14206
- hasInner(obj: any): obj is {
14207
- readonly tag: SdkError_Tags.OptimizationAlreadyRunning;
15158
+ getInner(obj: {
15159
+ readonly tag: SdkError_Tags.InsufficientCpfpFunds;
15160
+ readonly inner: Readonly<{
15161
+ requiredSat: bigint;
15162
+ }>;
14208
15163
  /**
14209
15164
  * @private
14210
15165
  * This field is private and should not be used, use `tag` instead.
@@ -14214,15 +15169,24 @@ export declare const SdkError: Readonly<{
14214
15169
  message: string;
14215
15170
  stack?: string;
14216
15171
  cause?: unknown;
14217
- };
15172
+ }): Readonly<{
15173
+ requiredSat: bigint;
15174
+ }>;
14218
15175
  isError(error: unknown): error is Error;
14219
15176
  captureStackTrace(targetObject: object, constructorOpt?: Function): void;
14220
15177
  prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
14221
15178
  stackTraceLimit: number;
14222
15179
  };
14223
- OptimizationCancelled: {
14224
- new (): {
14225
- readonly tag: SdkError_Tags.OptimizationCancelled;
15180
+ FundingUtxoConflict: {
15181
+ new (inner: {
15182
+ txid: string;
15183
+ vout: number;
15184
+ }): {
15185
+ readonly tag: SdkError_Tags.FundingUtxoConflict;
15186
+ readonly inner: Readonly<{
15187
+ txid: string;
15188
+ vout: number;
15189
+ }>;
14226
15190
  /**
14227
15191
  * @private
14228
15192
  * This field is private and should not be used, use `tag` instead.
@@ -14233,8 +15197,15 @@ export declare const SdkError: Readonly<{
14233
15197
  stack?: string;
14234
15198
  cause?: unknown;
14235
15199
  };
14236
- "new"(): {
14237
- readonly tag: SdkError_Tags.OptimizationCancelled;
15200
+ "new"(inner: {
15201
+ txid: string;
15202
+ vout: number;
15203
+ }): {
15204
+ readonly tag: SdkError_Tags.FundingUtxoConflict;
15205
+ readonly inner: Readonly<{
15206
+ txid: string;
15207
+ vout: number;
15208
+ }>;
14238
15209
  /**
14239
15210
  * @private
14240
15211
  * This field is private and should not be used, use `tag` instead.
@@ -14246,7 +15217,11 @@ export declare const SdkError: Readonly<{
14246
15217
  cause?: unknown;
14247
15218
  };
14248
15219
  instanceOf(obj: any): obj is {
14249
- readonly tag: SdkError_Tags.OptimizationCancelled;
15220
+ readonly tag: SdkError_Tags.FundingUtxoConflict;
15221
+ readonly inner: Readonly<{
15222
+ txid: string;
15223
+ vout: number;
15224
+ }>;
14250
15225
  /**
14251
15226
  * @private
14252
15227
  * This field is private and should not be used, use `tag` instead.
@@ -14258,7 +15233,11 @@ export declare const SdkError: Readonly<{
14258
15233
  cause?: unknown;
14259
15234
  };
14260
15235
  hasInner(obj: any): obj is {
14261
- readonly tag: SdkError_Tags.OptimizationCancelled;
15236
+ readonly tag: SdkError_Tags.FundingUtxoConflict;
15237
+ readonly inner: Readonly<{
15238
+ txid: string;
15239
+ vout: number;
15240
+ }>;
14262
15241
  /**
14263
15242
  * @private
14264
15243
  * This field is private and should not be used, use `tag` instead.
@@ -14269,6 +15248,25 @@ export declare const SdkError: Readonly<{
14269
15248
  stack?: string;
14270
15249
  cause?: unknown;
14271
15250
  };
15251
+ getInner(obj: {
15252
+ readonly tag: SdkError_Tags.FundingUtxoConflict;
15253
+ readonly inner: Readonly<{
15254
+ txid: string;
15255
+ vout: number;
15256
+ }>;
15257
+ /**
15258
+ * @private
15259
+ * This field is private and should not be used, use `tag` instead.
15260
+ */
15261
+ readonly [uniffiTypeNameSymbol]: "SdkError";
15262
+ name: string;
15263
+ message: string;
15264
+ stack?: string;
15265
+ cause?: unknown;
15266
+ }): Readonly<{
15267
+ txid: string;
15268
+ vout: number;
15269
+ }>;
14272
15270
  isError(error: unknown): error is Error;
14273
15271
  captureStackTrace(targetObject: object, constructorOpt?: Function): void;
14274
15272
  prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
@@ -16930,6 +17928,85 @@ export declare enum SparkHtlcStatus {
16930
17928
  */
16931
17929
  Returned = 2
16932
17930
  }
17931
+ export declare enum SparkMasterIdentityPublicKey_Tags {
17932
+ Set = "Set",
17933
+ Unset = "Unset"
17934
+ }
17935
+ /**
17936
+ * Specifies how to update the wallet's Spark master identity public key.
17937
+ */
17938
+ export declare const SparkMasterIdentityPublicKey: Readonly<{
17939
+ instanceOf: (obj: any) => obj is SparkMasterIdentityPublicKey;
17940
+ Set: {
17941
+ new (inner: {
17942
+ publicKey: string;
17943
+ }): {
17944
+ readonly tag: SparkMasterIdentityPublicKey_Tags.Set;
17945
+ readonly inner: Readonly<{
17946
+ publicKey: string;
17947
+ }>;
17948
+ /**
17949
+ * @private
17950
+ * This field is private and should not be used, use `tag` instead.
17951
+ */
17952
+ readonly [uniffiTypeNameSymbol]: "SparkMasterIdentityPublicKey";
17953
+ };
17954
+ "new"(inner: {
17955
+ publicKey: string;
17956
+ }): {
17957
+ readonly tag: SparkMasterIdentityPublicKey_Tags.Set;
17958
+ readonly inner: Readonly<{
17959
+ publicKey: string;
17960
+ }>;
17961
+ /**
17962
+ * @private
17963
+ * This field is private and should not be used, use `tag` instead.
17964
+ */
17965
+ readonly [uniffiTypeNameSymbol]: "SparkMasterIdentityPublicKey";
17966
+ };
17967
+ instanceOf(obj: any): obj is {
17968
+ readonly tag: SparkMasterIdentityPublicKey_Tags.Set;
17969
+ readonly inner: Readonly<{
17970
+ publicKey: string;
17971
+ }>;
17972
+ /**
17973
+ * @private
17974
+ * This field is private and should not be used, use `tag` instead.
17975
+ */
17976
+ readonly [uniffiTypeNameSymbol]: "SparkMasterIdentityPublicKey";
17977
+ };
17978
+ };
17979
+ Unset: {
17980
+ new (): {
17981
+ readonly tag: SparkMasterIdentityPublicKey_Tags.Unset;
17982
+ /**
17983
+ * @private
17984
+ * This field is private and should not be used, use `tag` instead.
17985
+ */
17986
+ readonly [uniffiTypeNameSymbol]: "SparkMasterIdentityPublicKey";
17987
+ };
17988
+ "new"(): {
17989
+ readonly tag: SparkMasterIdentityPublicKey_Tags.Unset;
17990
+ /**
17991
+ * @private
17992
+ * This field is private and should not be used, use `tag` instead.
17993
+ */
17994
+ readonly [uniffiTypeNameSymbol]: "SparkMasterIdentityPublicKey";
17995
+ };
17996
+ instanceOf(obj: any): obj is {
17997
+ readonly tag: SparkMasterIdentityPublicKey_Tags.Unset;
17998
+ /**
17999
+ * @private
18000
+ * This field is private and should not be used, use `tag` instead.
18001
+ */
18002
+ readonly [uniffiTypeNameSymbol]: "SparkMasterIdentityPublicKey";
18003
+ };
18004
+ };
18005
+ }>;
18006
+ /**
18007
+ * Specifies how to update the wallet's Spark master identity public key.
18008
+ */
18009
+ export type SparkMasterIdentityPublicKey = InstanceType<(typeof SparkMasterIdentityPublicKey)[keyof Omit<typeof SparkMasterIdentityPublicKey, 'instanceOf'>]>;
16933
18010
  export declare enum StableBalanceActiveLabel_Tags {
16934
18011
  Set = "Set",
16935
18012
  Unset = "Unset"
@@ -18037,6 +19114,28 @@ export declare const TransferTarget: Readonly<{
18037
19114
  };
18038
19115
  }>;
18039
19116
  export type TransferTarget = InstanceType<(typeof TransferTarget)[keyof Omit<typeof TransferTarget, 'instanceOf'>]>;
19117
+ /**
19118
+ * The role of a transaction in the exit path.
19119
+ */
19120
+ export declare enum UnilateralExitTxKind {
19121
+ /**
19122
+ * Splits the caller's funding into one output per branch. Present only
19123
+ * when the funding couldn't be matched one-to-one to branches.
19124
+ */
19125
+ FanOut = 0,
19126
+ /**
19127
+ * A tree node transaction (root, intermediate, or leaf node).
19128
+ */
19129
+ Node = 1,
19130
+ /**
19131
+ * A leaf's refund transaction.
19132
+ */
19133
+ Refund = 2,
19134
+ /**
19135
+ * The final transaction sweeping all refund outputs to the destination.
19136
+ */
19137
+ Sweep = 3
19138
+ }
18040
19139
  export declare enum UnsignedTransferPackage_Tags {
18041
19140
  Swap = "Swap",
18042
19141
  Transfer = "Transfer",
@@ -18471,12 +19570,24 @@ export interface BitcoinChainService {
18471
19570
  getAddressUtxos(address: string, asyncOpts_?: {
18472
19571
  signal: AbortSignal;
18473
19572
  }): Promise<Array<Utxo>>;
19573
+ /**
19574
+ * Every output ever paid to `address`, spent or not, unlike
19575
+ * [`get_address_utxos`](Self::get_address_utxos) which omits spent ones.
19576
+ * Recovers an output's outpoint and value after it has been spent, so a
19577
+ * swept refund can still be distinguished from one never broadcast.
19578
+ */
19579
+ getAddressTxos(address: string, asyncOpts_?: {
19580
+ signal: AbortSignal;
19581
+ }): Promise<Array<Utxo>>;
18474
19582
  getTransactionStatus(txid: string, asyncOpts_?: {
18475
19583
  signal: AbortSignal;
18476
19584
  }): Promise<TxStatus>;
18477
19585
  getTransactionHex(txid: string, asyncOpts_?: {
18478
19586
  signal: AbortSignal;
18479
19587
  }): Promise<string>;
19588
+ getOutspend(txid: string, vout: number, asyncOpts_?: {
19589
+ signal: AbortSignal;
19590
+ }): Promise<Outspend>;
18480
19591
  broadcastTransaction(tx: string, asyncOpts_?: {
18481
19592
  signal: AbortSignal;
18482
19593
  }): Promise<void>;
@@ -18492,12 +19603,24 @@ export declare class BitcoinChainServiceImpl extends UniffiAbstractObject implem
18492
19603
  getAddressUtxos(address: string, asyncOpts_?: {
18493
19604
  signal: AbortSignal;
18494
19605
  }): Promise<Array<Utxo>>;
19606
+ /**
19607
+ * Every output ever paid to `address`, spent or not, unlike
19608
+ * [`get_address_utxos`](Self::get_address_utxos) which omits spent ones.
19609
+ * Recovers an output's outpoint and value after it has been spent, so a
19610
+ * swept refund can still be distinguished from one never broadcast.
19611
+ */
19612
+ getAddressTxos(address: string, asyncOpts_?: {
19613
+ signal: AbortSignal;
19614
+ }): Promise<Array<Utxo>>;
18495
19615
  getTransactionStatus(txid: string, asyncOpts_?: {
18496
19616
  signal: AbortSignal;
18497
19617
  }): Promise<TxStatus>;
18498
19618
  getTransactionHex(txid: string, asyncOpts_?: {
18499
19619
  signal: AbortSignal;
18500
19620
  }): Promise<string>;
19621
+ getOutspend(txid: string, vout: number, asyncOpts_?: {
19622
+ signal: AbortSignal;
19623
+ }): Promise<Outspend>;
18501
19624
  broadcastTransaction(tx: string, asyncOpts_?: {
18502
19625
  signal: AbortSignal;
18503
19626
  }): Promise<void>;
@@ -18816,6 +19939,14 @@ export interface BreezSdkInterface {
18816
19939
  prepareSendPayment(request: PrepareSendPaymentRequest, asyncOpts_?: {
18817
19940
  signal: AbortSignal;
18818
19941
  }): Promise<PrepareSendPaymentResponse>;
19942
+ /**
19943
+ * Quotes a unilateral exit without any funding UTXOs: selects which leaves
19944
+ * would exit, computes the exact fee for the given funding kind, and reports
19945
+ * how much to fund.
19946
+ */
19947
+ prepareUnilateralExit(request: PrepareUnilateralExitRequest, asyncOpts_?: {
19948
+ signal: AbortSignal;
19949
+ }): Promise<PrepareUnilateralExitResponse>;
18819
19950
  publishSignedLnurlPayPackage(request: PublishSignedLnurlPayPackageRequest, asyncOpts_?: {
18820
19951
  signal: AbortSignal;
18821
19952
  }): Promise<PublishSignedLnurlPayResponse>;
@@ -18835,19 +19966,20 @@ export interface BreezSdkInterface {
18835
19966
  signal: AbortSignal;
18836
19967
  }): Promise<RefundDepositResponse>;
18837
19968
  /**
18838
- * Runs one pass of the pending-conversion refunder.
19969
+ * Runs one full pass of the pending-conversion refunder and returns how
19970
+ * many conversions were refunded, skipped (held back by a safety window),
19971
+ * or failed.
18839
19972
  *
18840
- * Iterates over payments whose conversions failed and have a refund
18841
- * pending, then attempts to refund each one. This is the same logic the
18842
- * SDK runs internally on a periodic schedule when
18843
- * `background_tasks_enabled` is `true`. When background tasks are
18844
- * disabled the periodic refunder does not run, and this method is the
18845
- * explicit entry point for driving the pass; when background tasks are
18846
- * enabled, it can be called to force an immediate refund pass.
19973
+ * The pass has two parts: refunding locally-marked failed conversions, and
19974
+ * reconciling against Flashnet's clawback-eligible listing to catch
19975
+ * conversions with no local marker (e.g. a storage write that never
19976
+ * landed). The SDK's periodic background schedule runs only the local
19977
+ * part; the reconcile runs at SDK init and on each call to this method, so
19978
+ * this is the explicit entry point for driving a full pass on demand.
18847
19979
  */
18848
19980
  refundPendingConversions(asyncOpts_?: {
18849
19981
  signal: AbortSignal;
18850
- }): Promise<void>;
19982
+ }): Promise<RefundPendingConversionsResponse>;
18851
19983
  registerLightningAddress(request: RegisterLightningAddressRequest, asyncOpts_?: {
18852
19984
  signal: AbortSignal;
18853
19985
  }): Promise<LightningAddressInfo>;
@@ -18900,6 +20032,21 @@ export interface BreezSdkInterface {
18900
20032
  syncWallet(request: SyncWalletRequest, asyncOpts_?: {
18901
20033
  signal: AbortSignal;
18902
20034
  }): Promise<SyncWalletResponse>;
20035
+ /**
20036
+ * Builds and signs a complete unilateral exit from a `prepare_unilateral_exit`
20037
+ * quote and the actual funding UTXOs, returning the full transaction set in
20038
+ * topological broadcast order without broadcasting. Broadcast it over time,
20039
+ * respecting each transaction's `depends_on` and `csv_timelock_blocks`.
20040
+ *
20041
+ * It resolves on-chain state first (see [`resolve_exit_observations`]): an
20042
+ * already-confirmed fan-out or CPFP node is not rebuilt, and a leaf refund
20043
+ * already on-chain (recognized by the leaf's refund address, so any refund
20044
+ * variant counts) is swept directly. Re-running after partial progress
20045
+ * therefore resumes rather than restarts.
20046
+ */
20047
+ unilateralExit(request: UnilateralExitRequest, signer: CpfpSigner, asyncOpts_?: {
20048
+ signal: AbortSignal;
20049
+ }): Promise<UnilateralExitResponse>;
18903
20050
  /**
18904
20051
  * Unregisters a previously registered webhook.
18905
20052
  *
@@ -19246,6 +20393,14 @@ export declare class BreezSdk extends UniffiAbstractObject implements BreezSdkIn
19246
20393
  prepareSendPayment(request: PrepareSendPaymentRequest, asyncOpts_?: {
19247
20394
  signal: AbortSignal;
19248
20395
  }): Promise<PrepareSendPaymentResponse>;
20396
+ /**
20397
+ * Quotes a unilateral exit without any funding UTXOs: selects which leaves
20398
+ * would exit, computes the exact fee for the given funding kind, and reports
20399
+ * how much to fund.
20400
+ */
20401
+ prepareUnilateralExit(request: PrepareUnilateralExitRequest, asyncOpts_?: {
20402
+ signal: AbortSignal;
20403
+ }): Promise<PrepareUnilateralExitResponse>;
19249
20404
  publishSignedLnurlPayPackage(request: PublishSignedLnurlPayPackageRequest, asyncOpts_?: {
19250
20405
  signal: AbortSignal;
19251
20406
  }): Promise<PublishSignedLnurlPayResponse>;
@@ -19265,19 +20420,20 @@ export declare class BreezSdk extends UniffiAbstractObject implements BreezSdkIn
19265
20420
  signal: AbortSignal;
19266
20421
  }): Promise<RefundDepositResponse>;
19267
20422
  /**
19268
- * Runs one pass of the pending-conversion refunder.
20423
+ * Runs one full pass of the pending-conversion refunder and returns how
20424
+ * many conversions were refunded, skipped (held back by a safety window),
20425
+ * or failed.
19269
20426
  *
19270
- * Iterates over payments whose conversions failed and have a refund
19271
- * pending, then attempts to refund each one. This is the same logic the
19272
- * SDK runs internally on a periodic schedule when
19273
- * `background_tasks_enabled` is `true`. When background tasks are
19274
- * disabled the periodic refunder does not run, and this method is the
19275
- * explicit entry point for driving the pass; when background tasks are
19276
- * enabled, it can be called to force an immediate refund pass.
20427
+ * The pass has two parts: refunding locally-marked failed conversions, and
20428
+ * reconciling against Flashnet's clawback-eligible listing to catch
20429
+ * conversions with no local marker (e.g. a storage write that never
20430
+ * landed). The SDK's periodic background schedule runs only the local
20431
+ * part; the reconcile runs at SDK init and on each call to this method, so
20432
+ * this is the explicit entry point for driving a full pass on demand.
19277
20433
  */
19278
20434
  refundPendingConversions(asyncOpts_?: {
19279
20435
  signal: AbortSignal;
19280
- }): Promise<void>;
20436
+ }): Promise<RefundPendingConversionsResponse>;
19281
20437
  registerLightningAddress(request: RegisterLightningAddressRequest, asyncOpts_?: {
19282
20438
  signal: AbortSignal;
19283
20439
  }): Promise<LightningAddressInfo>;
@@ -19330,6 +20486,21 @@ export declare class BreezSdk extends UniffiAbstractObject implements BreezSdkIn
19330
20486
  syncWallet(request: SyncWalletRequest, asyncOpts_?: {
19331
20487
  signal: AbortSignal;
19332
20488
  }): Promise<SyncWalletResponse>;
20489
+ /**
20490
+ * Builds and signs a complete unilateral exit from a `prepare_unilateral_exit`
20491
+ * quote and the actual funding UTXOs, returning the full transaction set in
20492
+ * topological broadcast order without broadcasting. Broadcast it over time,
20493
+ * respecting each transaction's `depends_on` and `csv_timelock_blocks`.
20494
+ *
20495
+ * It resolves on-chain state first (see [`resolve_exit_observations`]): an
20496
+ * already-confirmed fan-out or CPFP node is not rebuilt, and a leaf refund
20497
+ * already on-chain (recognized by the leaf's refund address, so any refund
20498
+ * variant counts) is swept directly. Re-running after partial progress
20499
+ * therefore resumes rather than restarts.
20500
+ */
20501
+ unilateralExit(request: UnilateralExitRequest, signer: CpfpSigner, asyncOpts_?: {
20502
+ signal: AbortSignal;
20503
+ }): Promise<UnilateralExitResponse>;
19333
20504
  /**
19334
20505
  * Unregisters a previously registered webhook.
19335
20506
  *
@@ -19371,6 +20542,37 @@ export declare class BreezSdk extends UniffiAbstractObject implements BreezSdkIn
19371
20542
  uniffiDestroy(): void;
19372
20543
  static instanceOf(obj: any): obj is BreezSdk;
19373
20544
  }
20545
+ /**
20546
+ * Signer for external UTXO inputs in CPFP fee-bumping transactions.
20547
+ *
20548
+ * Signs the non-finalized inputs of a PSBT (serialized as bytes) and returns the
20549
+ * signed PSBT (also serialized as bytes).
20550
+ */
20551
+ export interface CpfpSigner {
20552
+ signPsbt(psbtBytes: ArrayBuffer, asyncOpts_?: {
20553
+ signal: AbortSignal;
20554
+ }): Promise<ArrayBuffer>;
20555
+ }
20556
+ /**
20557
+ * Signer for external UTXO inputs in CPFP fee-bumping transactions.
20558
+ *
20559
+ * Signs the non-finalized inputs of a PSBT (serialized as bytes) and returns the
20560
+ * signed PSBT (also serialized as bytes).
20561
+ */
20562
+ export declare class CpfpSignerImpl extends UniffiAbstractObject implements CpfpSigner {
20563
+ readonly [uniffiTypeNameSymbol] = "CpfpSignerImpl";
20564
+ readonly [destructorGuardSymbol]: UniffiRustArcPtr;
20565
+ readonly [pointerLiteralSymbol]: UnsafeMutableRawPointer;
20566
+ private constructor();
20567
+ signPsbt(psbtBytes: ArrayBuffer, asyncOpts_?: {
20568
+ signal: AbortSignal;
20569
+ }): Promise<ArrayBuffer>;
20570
+ /**
20571
+ * {@inheritDoc uniffi-bindgen-react-native#UniffiAbstractObject.uniffiDestroy}
20572
+ */
20573
+ uniffiDestroy(): void;
20574
+ static instanceOf(obj: any): obj is CpfpSignerImpl;
20575
+ }
19374
20576
  /**
19375
20577
  * External signer trait that can be implemented by users and passed to the SDK.
19376
20578
  *
@@ -19796,6 +20998,13 @@ export interface ExternalSparkSigner {
19796
20998
  signMessage(message: ArrayBuffer, asyncOpts_?: {
19797
20999
  signal: AbortSignal;
19798
21000
  }): Promise<EcdsaSignatureBytes>;
21001
+ /**
21002
+ * Schnorr-sign `sighash` to spend a tree leaf's P2TR refund output as a
21003
+ * BIP341 key-path spend (empty script tree).
21004
+ */
21005
+ signLeafRefundSpend(leafId: ExternalTreeNodeId, sighash: ArrayBuffer, asyncOpts_?: {
21006
+ signal: AbortSignal;
21007
+ }): Promise<SchnorrSignatureBytes>;
19799
21008
  /**
19800
21009
  * Produce FROST shares for a batch of jobs.
19801
21010
  */
@@ -19902,6 +21111,13 @@ export declare class ExternalSparkSignerImpl extends UniffiAbstractObject implem
19902
21111
  signMessage(message: ArrayBuffer, asyncOpts_?: {
19903
21112
  signal: AbortSignal;
19904
21113
  }): Promise<EcdsaSignatureBytes>;
21114
+ /**
21115
+ * Schnorr-sign `sighash` to spend a tree leaf's P2TR refund output as a
21116
+ * BIP341 key-path spend (empty script tree).
21117
+ */
21118
+ signLeafRefundSpend(leafId: ExternalTreeNodeId, sighash: ArrayBuffer, asyncOpts_?: {
21119
+ signal: AbortSignal;
21120
+ }): Promise<SchnorrSignatureBytes>;
19905
21121
  /**
19906
21122
  * Produce FROST shares for a batch of jobs.
19907
21123
  */
@@ -21929,6 +23145,13 @@ declare const _default: Readonly<{
21929
23145
  lift(value: UniffiByteArray): Config;
21930
23146
  lower(value: Config): UniffiByteArray;
21931
23147
  };
23148
+ FfiConverterTypeConfirmationStatus: {
23149
+ read(from: RustBuffer): ConfirmationStatus;
23150
+ write(value: ConfirmationStatus, into: RustBuffer): void;
23151
+ allocationSize(value: ConfirmationStatus): number;
23152
+ lift(value: UniffiByteArray): ConfirmationStatus;
23153
+ lower(value: ConfirmationStatus): UniffiByteArray;
23154
+ };
21932
23155
  FfiConverterTypeConnectRequest: {
21933
23156
  read(from: RustBuffer): ConnectRequest;
21934
23157
  write(value: ConnectRequest, into: RustBuffer): void;
@@ -22062,6 +23285,21 @@ declare const _default: Readonly<{
22062
23285
  lift(value: UniffiByteArray): ConversionType;
22063
23286
  lower(value: ConversionType): UniffiByteArray;
22064
23287
  };
23288
+ FfiConverterTypeCpfpFundingKind: {
23289
+ read(from: RustBuffer): CpfpFundingKind;
23290
+ write(value: CpfpFundingKind, into: RustBuffer): void;
23291
+ allocationSize(value: CpfpFundingKind): number;
23292
+ lift(value: UniffiByteArray): CpfpFundingKind;
23293
+ lower(value: CpfpFundingKind): UniffiByteArray;
23294
+ };
23295
+ FfiConverterTypeCpfpInput: {
23296
+ read(from: RustBuffer): CpfpInput;
23297
+ write(value: CpfpInput, into: RustBuffer): void;
23298
+ allocationSize(value: CpfpInput): number;
23299
+ lift(value: UniffiByteArray): CpfpInput;
23300
+ lower(value: CpfpInput): UniffiByteArray;
23301
+ };
23302
+ FfiConverterTypeCpfpSigner: FfiConverterObjectWithCallbacks<CpfpSigner>;
22065
23303
  FfiConverterTypeCreateIssuerTokenRequest: {
22066
23304
  read(from: RustBuffer): CreateIssuerTokenRequest;
22067
23305
  write(value: CreateIssuerTokenRequest, into: RustBuffer): void;
@@ -22188,6 +23426,13 @@ declare const _default: Readonly<{
22188
23426
  lift(value: UniffiByteArray): ErrorKind;
22189
23427
  lower(value: ErrorKind): UniffiByteArray;
22190
23428
  };
23429
+ FfiConverterTypeExitLeafSelection: {
23430
+ read(from: RustBuffer): ExitLeafSelection;
23431
+ write(value: ExitLeafSelection, into: RustBuffer): void;
23432
+ allocationSize(value: ExitLeafSelection): number;
23433
+ lift(value: UniffiByteArray): ExitLeafSelection;
23434
+ lower(value: ExitLeafSelection): UniffiByteArray;
23435
+ };
22191
23436
  FfiConverterTypeExternalBreezSigner: FfiConverterObjectWithCallbacks<ExternalBreezSigner>;
22192
23437
  FfiConverterTypeExternalClaimLeafInput: {
22193
23438
  read(from: RustBuffer): ExternalClaimLeafInput;
@@ -22836,6 +24081,13 @@ declare const _default: Readonly<{
22836
24081
  lift(value: UniffiByteArray): OutgoingChange;
22837
24082
  lower(value: OutgoingChange): UniffiByteArray;
22838
24083
  };
24084
+ FfiConverterTypeOutspend: {
24085
+ read(from: RustBuffer): Outspend;
24086
+ write(value: Outspend, into: RustBuffer): void;
24087
+ allocationSize(value: Outspend): number;
24088
+ lift(value: UniffiByteArray): Outspend;
24089
+ lower(value: Outspend): UniffiByteArray;
24090
+ };
22839
24091
  FfiConverterTypePasskeyAvailability: {
22840
24092
  read(from: RustBuffer): PasskeyAvailability;
22841
24093
  write(value: PasskeyAvailability, into: RustBuffer): void;
@@ -22951,6 +24203,13 @@ declare const _default: Readonly<{
22951
24203
  lift(value: UniffiByteArray): PaymentType;
22952
24204
  lower(value: PaymentType): UniffiByteArray;
22953
24205
  };
24206
+ FfiConverterTypePerBranchFunding: {
24207
+ read(from: RustBuffer): PerBranchFunding;
24208
+ write(value: PerBranchFunding, into: RustBuffer): void;
24209
+ allocationSize(value: PerBranchFunding): number;
24210
+ lift(value: UniffiByteArray): PerBranchFunding;
24211
+ lower(value: PerBranchFunding): UniffiByteArray;
24212
+ };
22954
24213
  FfiConverterTypePrepareLnurlPayRequest: {
22955
24214
  read(from: RustBuffer): PrepareLnurlPayRequest;
22956
24215
  write(value: PrepareLnurlPayRequest, into: RustBuffer): void;
@@ -22979,6 +24238,20 @@ declare const _default: Readonly<{
22979
24238
  lift(value: UniffiByteArray): PrepareSendPaymentResponse;
22980
24239
  lower(value: PrepareSendPaymentResponse): UniffiByteArray;
22981
24240
  };
24241
+ FfiConverterTypePrepareUnilateralExitRequest: {
24242
+ read(from: RustBuffer): PrepareUnilateralExitRequest;
24243
+ write(value: PrepareUnilateralExitRequest, into: RustBuffer): void;
24244
+ allocationSize(value: PrepareUnilateralExitRequest): number;
24245
+ lift(value: UniffiByteArray): PrepareUnilateralExitRequest;
24246
+ lower(value: PrepareUnilateralExitRequest): UniffiByteArray;
24247
+ };
24248
+ FfiConverterTypePrepareUnilateralExitResponse: {
24249
+ read(from: RustBuffer): PrepareUnilateralExitResponse;
24250
+ write(value: PrepareUnilateralExitResponse, into: RustBuffer): void;
24251
+ allocationSize(value: PrepareUnilateralExitResponse): number;
24252
+ lift(value: UniffiByteArray): PrepareUnilateralExitResponse;
24253
+ lower(value: PrepareUnilateralExitResponse): UniffiByteArray;
24254
+ };
22982
24255
  FfiConverterTypePrfProvider: FfiConverterObjectWithCallbacks<PrfProvider>;
22983
24256
  FfiConverterTypePrfProviderError: {
22984
24257
  read(from: RustBuffer): PrfProviderError;
@@ -23114,6 +24387,13 @@ declare const _default: Readonly<{
23114
24387
  lift(value: UniffiByteArray): RefundDepositResponse;
23115
24388
  lower(value: RefundDepositResponse): UniffiByteArray;
23116
24389
  };
24390
+ FfiConverterTypeRefundPendingConversionsResponse: {
24391
+ read(from: RustBuffer): RefundPendingConversionsResponse;
24392
+ write(value: RefundPendingConversionsResponse, into: RustBuffer): void;
24393
+ allocationSize(value: RefundPendingConversionsResponse): number;
24394
+ lift(value: UniffiByteArray): RefundPendingConversionsResponse;
24395
+ lower(value: RefundPendingConversionsResponse): UniffiByteArray;
24396
+ };
23117
24397
  FfiConverterTypeRegisterLightningAddressRequest: {
23118
24398
  read(from: RustBuffer): RegisterLightningAddressRequest;
23119
24399
  write(value: RegisterLightningAddressRequest, into: RustBuffer): void;
@@ -23399,6 +24679,13 @@ declare const _default: Readonly<{
23399
24679
  lift(value: UniffiByteArray): SparkInvoicePaymentDetails;
23400
24680
  lower(value: SparkInvoicePaymentDetails): UniffiByteArray;
23401
24681
  };
24682
+ FfiConverterTypeSparkMasterIdentityPublicKey: {
24683
+ read(from: RustBuffer): SparkMasterIdentityPublicKey;
24684
+ write(value: SparkMasterIdentityPublicKey, into: RustBuffer): void;
24685
+ allocationSize(value: SparkMasterIdentityPublicKey): number;
24686
+ lift(value: UniffiByteArray): SparkMasterIdentityPublicKey;
24687
+ lower(value: SparkMasterIdentityPublicKey): UniffiByteArray;
24688
+ };
23402
24689
  FfiConverterTypeSparkSigningOperator: {
23403
24690
  read(from: RustBuffer): SparkSigningOperator;
23404
24691
  write(value: SparkSigningOperator, into: RustBuffer): void;
@@ -23591,6 +24878,41 @@ declare const _default: Readonly<{
23591
24878
  lift(value: UniffiByteArray): UnfreezeIssuerTokenResponse;
23592
24879
  lower(value: UnfreezeIssuerTokenResponse): UniffiByteArray;
23593
24880
  };
24881
+ FfiConverterTypeUnilateralExitLeaf: {
24882
+ read(from: RustBuffer): UnilateralExitLeaf;
24883
+ write(value: UnilateralExitLeaf, into: RustBuffer): void;
24884
+ allocationSize(value: UnilateralExitLeaf): number;
24885
+ lift(value: UniffiByteArray): UnilateralExitLeaf;
24886
+ lower(value: UnilateralExitLeaf): UniffiByteArray;
24887
+ };
24888
+ FfiConverterTypeUnilateralExitRequest: {
24889
+ read(from: RustBuffer): UnilateralExitRequest;
24890
+ write(value: UnilateralExitRequest, into: RustBuffer): void;
24891
+ allocationSize(value: UnilateralExitRequest): number;
24892
+ lift(value: UniffiByteArray): UnilateralExitRequest;
24893
+ lower(value: UnilateralExitRequest): UniffiByteArray;
24894
+ };
24895
+ FfiConverterTypeUnilateralExitResponse: {
24896
+ read(from: RustBuffer): UnilateralExitResponse;
24897
+ write(value: UnilateralExitResponse, into: RustBuffer): void;
24898
+ allocationSize(value: UnilateralExitResponse): number;
24899
+ lift(value: UniffiByteArray): UnilateralExitResponse;
24900
+ lower(value: UnilateralExitResponse): UniffiByteArray;
24901
+ };
24902
+ FfiConverterTypeUnilateralExitTransaction: {
24903
+ read(from: RustBuffer): UnilateralExitTransaction;
24904
+ write(value: UnilateralExitTransaction, into: RustBuffer): void;
24905
+ allocationSize(value: UnilateralExitTransaction): number;
24906
+ lift(value: UniffiByteArray): UnilateralExitTransaction;
24907
+ lower(value: UnilateralExitTransaction): UniffiByteArray;
24908
+ };
24909
+ FfiConverterTypeUnilateralExitTxKind: {
24910
+ read(from: RustBuffer): UnilateralExitTxKind;
24911
+ write(value: UnilateralExitTxKind, into: RustBuffer): void;
24912
+ allocationSize(value: UnilateralExitTxKind): number;
24913
+ lift(value: UniffiByteArray): UnilateralExitTxKind;
24914
+ lower(value: UnilateralExitTxKind): UniffiByteArray;
24915
+ };
23594
24916
  FfiConverterTypeUnregisterWebhookRequest: {
23595
24917
  read(from: RustBuffer): UnregisterWebhookRequest;
23596
24918
  write(value: UnregisterWebhookRequest, into: RustBuffer): void;