@satrush/client 0.1.2 → 0.1.4

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.
package/dist/index.d.mts CHANGED
@@ -208,6 +208,25 @@ declare function fetchAllEpochVaultEntry(rpc: Parameters<typeof fetchEncodedAcco
208
208
  declare function fetchAllMaybeEpochVaultEntry(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<MaybeAccount<EpochVaultEntry>[]>;
209
209
  declare function getEpochVaultEntrySize(): number;
210
210
 
211
+ /**
212
+ * This code was AUTOGENERATED using the Codama library.
213
+ * Please DO NOT EDIT THIS FILE, instead use visitors
214
+ * to add features, then rerun Codama to update it.
215
+ *
216
+ * @see https://github.com/codama-idl/codama
217
+ */
218
+
219
+ /** Tile-selection strategy for an automation's per-round deployments. */
220
+ declare enum AutomationStrategy {
221
+ Static = 0,
222
+ Random = 1,
223
+ Discretionary = 2
224
+ }
225
+ type AutomationStrategyArgs = AutomationStrategy;
226
+ declare function getAutomationStrategyEncoder(): FixedSizeEncoder<AutomationStrategyArgs>;
227
+ declare function getAutomationStrategyDecoder(): FixedSizeDecoder<AutomationStrategy>;
228
+ declare function getAutomationStrategyCodec(): FixedSizeCodec<AutomationStrategyArgs, AutomationStrategy>;
229
+
211
230
  /**
212
231
  * This code was AUTOGENERATED using the Codama library.
213
232
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -408,6 +427,13 @@ type PublicDeploySettled = {
408
427
  wonSharesAmount: bigint;
409
428
  /** Hashrate points credited for the play. */
410
429
  hashrateEarned: bigint;
430
+ /** The deployment was created by a `PublicAutomation`. */
431
+ isAutomation: boolean;
432
+ /**
433
+ * The USD winnings were reloaded into the automation's escrow (the
434
+ * reloaded amount equals `won_usd_amount` when true).
435
+ */
436
+ reload: boolean;
411
437
  };
412
438
  type PublicDeploySettledArgs = {
413
439
  authority: Address;
@@ -420,6 +446,13 @@ type PublicDeploySettledArgs = {
420
446
  wonSharesAmount: number | bigint;
421
447
  /** Hashrate points credited for the play. */
422
448
  hashrateEarned: number | bigint;
449
+ /** The deployment was created by a `PublicAutomation`. */
450
+ isAutomation: boolean;
451
+ /**
452
+ * The USD winnings were reloaded into the automation's escrow (the
453
+ * reloaded amount equals `won_usd_amount` when true).
454
+ */
455
+ reload: boolean;
423
456
  };
424
457
  declare function getPublicDeploySettledEncoder(): FixedSizeEncoder<PublicDeploySettledArgs>;
425
458
  declare function getPublicDeploySettledDecoder(): FixedSizeDecoder<PublicDeploySettled>;
@@ -923,6 +956,89 @@ declare function fetchAllOneBtcVaultIteration(rpc: Parameters<typeof fetchEncode
923
956
  declare function fetchAllMaybeOneBtcVaultIteration(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<MaybeAccount<OneBtcVaultIteration>[]>;
924
957
  declare function getOneBtcVaultIterationSize(): number;
925
958
 
959
+ /**
960
+ * This code was AUTOGENERATED using the Codama library.
961
+ * Please DO NOT EDIT THIS FILE, instead use visitors
962
+ * to add features, then rerun Codama to update it.
963
+ *
964
+ * @see https://github.com/codama-idl/codama
965
+ */
966
+
967
+ declare const PUBLIC_AUTOMATION_DISCRIMINATOR: ReadonlyUint8Array;
968
+ declare function getPublicAutomationDiscriminatorBytes(): ReadonlyUint8Array;
969
+ type PublicAutomation = {
970
+ discriminator: ReadonlyUint8Array;
971
+ /** Struct version. */
972
+ version: number;
973
+ /** PDA bump seed. */
974
+ bump: number;
975
+ /**
976
+ * The user the automation plays for; also the `PublicDeployment.authority`
977
+ * of every deployment it creates.
978
+ */
979
+ authority: Address;
980
+ /** Tile-selection strategy. */
981
+ strategy: AutomationStrategy;
982
+ /**
983
+ * Static: the mask used every round. Random: the initial mask whose
984
+ * `count_ones()` fixes the generated tile count. Discretionary: 0.
985
+ */
986
+ selectionMask: number;
987
+ /** Whether settled USD winnings reload `remaining_usd_amount`. */
988
+ reload: boolean;
989
+ /**
990
+ * Gross deploy size per round; fee legs are charged on top of it from the
991
+ * balance, matching manual deploy semantics.
992
+ */
993
+ perRoundUsdAmount: bigint;
994
+ /** Escrowed funds still available; mirrors the automation's USD ATA. */
995
+ remainingUsdAmount: bigint;
996
+ /** Reserved. */
997
+ reserved: ReadonlyUint8Array;
998
+ };
999
+ type PublicAutomationArgs = {
1000
+ /** Struct version. */
1001
+ version: number;
1002
+ /** PDA bump seed. */
1003
+ bump: number;
1004
+ /**
1005
+ * The user the automation plays for; also the `PublicDeployment.authority`
1006
+ * of every deployment it creates.
1007
+ */
1008
+ authority: Address;
1009
+ /** Tile-selection strategy. */
1010
+ strategy: AutomationStrategyArgs;
1011
+ /**
1012
+ * Static: the mask used every round. Random: the initial mask whose
1013
+ * `count_ones()` fixes the generated tile count. Discretionary: 0.
1014
+ */
1015
+ selectionMask: number;
1016
+ /** Whether settled USD winnings reload `remaining_usd_amount`. */
1017
+ reload: boolean;
1018
+ /**
1019
+ * Gross deploy size per round; fee legs are charged on top of it from the
1020
+ * balance, matching manual deploy semantics.
1021
+ */
1022
+ perRoundUsdAmount: number | bigint;
1023
+ /** Escrowed funds still available; mirrors the automation's USD ATA. */
1024
+ remainingUsdAmount: number | bigint;
1025
+ /** Reserved. */
1026
+ reserved: ReadonlyUint8Array;
1027
+ };
1028
+ /** Gets the encoder for {@link PublicAutomationArgs} account data. */
1029
+ declare function getPublicAutomationEncoder(): FixedSizeEncoder<PublicAutomationArgs>;
1030
+ /** Gets the decoder for {@link PublicAutomation} account data. */
1031
+ declare function getPublicAutomationDecoder(): FixedSizeDecoder<PublicAutomation>;
1032
+ /** Gets the codec for {@link PublicAutomation} account data. */
1033
+ declare function getPublicAutomationCodec(): FixedSizeCodec<PublicAutomationArgs, PublicAutomation>;
1034
+ declare function decodePublicAutomation<TAddress extends string = string>(encodedAccount: EncodedAccount<TAddress>): Account<PublicAutomation, TAddress>;
1035
+ declare function decodePublicAutomation<TAddress extends string = string>(encodedAccount: MaybeEncodedAccount<TAddress>): MaybeAccount<PublicAutomation, TAddress>;
1036
+ declare function fetchPublicAutomation<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<Account<PublicAutomation, TAddress>>;
1037
+ declare function fetchMaybePublicAutomation<TAddress extends string = string>(rpc: Parameters<typeof fetchEncodedAccount>[0], address: Address<TAddress>, config?: FetchAccountConfig): Promise<MaybeAccount<PublicAutomation, TAddress>>;
1038
+ declare function fetchAllPublicAutomation(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<Account<PublicAutomation>[]>;
1039
+ declare function fetchAllMaybePublicAutomation(rpc: Parameters<typeof fetchEncodedAccounts>[0], addresses: Array<Address>, config?: FetchAccountsConfig): Promise<MaybeAccount<PublicAutomation>[]>;
1040
+ declare function getPublicAutomationSize(): number;
1041
+
926
1042
  /**
927
1043
  * This code was AUTOGENERATED using the Codama library.
928
1044
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -953,8 +1069,11 @@ type PublicDeployment = {
953
1069
  * streak (which advances on later deploys).
954
1070
  */
955
1071
  streakSnapshot: number;
956
- /** Auto-miner session PDA that created this miner, or `None` for manual miners. */
957
- autoMinerSession: Option<Address>;
1072
+ /**
1073
+ * `PublicAutomation` PDA that created this deployment, or `None` for
1074
+ * manual deploys. Settlement reads it to route USD winnings and rent.
1075
+ */
1076
+ automation: Option<Address>;
958
1077
  /** Reserved */
959
1078
  reserved: ReadonlyUint8Array;
960
1079
  };
@@ -977,8 +1096,11 @@ type PublicDeploymentArgs = {
977
1096
  * streak (which advances on later deploys).
978
1097
  */
979
1098
  streakSnapshot: number;
980
- /** Auto-miner session PDA that created this miner, or `None` for manual miners. */
981
- autoMinerSession: OptionOrNullable<Address>;
1099
+ /**
1100
+ * `PublicAutomation` PDA that created this deployment, or `None` for
1101
+ * manual deploys. Settlement reads it to route USD winnings and rent.
1102
+ */
1103
+ automation: OptionOrNullable<Address>;
982
1104
  /** Reserved */
983
1105
  reserved: ReadonlyUint8Array;
984
1106
  };
@@ -1408,7 +1530,13 @@ declare const SATRUSH_ERROR__TREASURY_EMPTY = 6049;
1408
1530
  declare const SATRUSH_ERROR__INVALID_CLAIM_AMOUNT = 6050;
1409
1531
  /** InsufficientUnclaimedUsd: Miner does not hold enough unclaimed USD */
1410
1532
  declare const SATRUSH_ERROR__INSUFFICIENT_UNCLAIMED_USD = 6051;
1411
- type SatrushError = typeof SATRUSH_ERROR__ALREADY_REVEALED | typeof SATRUSH_ERROR__ALREADY_SETTLED | typeof SATRUSH_ERROR__ALREADY_SWAPPED | typeof SATRUSH_ERROR__BOARD_ALREADY_BOOTSTRAPPED | typeof SATRUSH_ERROR__DEPLOYMENT_NOT_SETTLED | typeof SATRUSH_ERROR__EPOCH_ALREADY_CLAIMED | typeof SATRUSH_ERROR__EPOCH_BELOW_MIN_HASHRATE | typeof SATRUSH_ERROR__EPOCH_BELOW_THRESHOLD | typeof SATRUSH_ERROR__EPOCH_INVALID_PAGE | typeof SATRUSH_ERROR__EPOCH_MAX_PARTICIPANTS | typeof SATRUSH_ERROR__EPOCH_NOT_A_WINNER | typeof SATRUSH_ERROR__EPOCH_NOT_OPEN | typeof SATRUSH_ERROR__EPOCH_NOT_SETTLED | typeof SATRUSH_ERROR__EPOCH_NOT_SETTLING | typeof SATRUSH_ERROR__EPOCH_PAGE_ALREADY_SEALED | typeof SATRUSH_ERROR__EPOCH_PAGE_NOT_SEALED | typeof SATRUSH_ERROR__EPOCH_SEAL_MISMATCH | typeof SATRUSH_ERROR__EPOCH_WINDOW_NOT_ELAPSED | typeof SATRUSH_ERROR__INSUFFICIENT_HASHRATE | typeof SATRUSH_ERROR__INSUFFICIENT_SHARES | typeof SATRUSH_ERROR__INSUFFICIENT_UNCLAIMED_USD | typeof SATRUSH_ERROR__INVALID_CLAIM_AMOUNT | typeof SATRUSH_ERROR__INVALID_DEPLOYMENT_AMOUNT | typeof SATRUSH_ERROR__INVALID_ENTROPY | typeof SATRUSH_ERROR__INVALID_JUPITER_ROUTE | typeof SATRUSH_ERROR__INVALID_ROUND_DURATION | typeof SATRUSH_ERROR__INVALID_ROUND_ID | typeof SATRUSH_ERROR__INVALID_SELECTION_MASK | typeof SATRUSH_ERROR__INVALID_SHARE_AMOUNT | typeof SATRUSH_ERROR__INVALID_SLOT_HASH | typeof SATRUSH_ERROR__INVALID_SWAP_PROGRAM | typeof SATRUSH_ERROR__MATH_OVERFLOW | typeof SATRUSH_ERROR__MATH_UNDERFLOW | typeof SATRUSH_ERROR__ONE_BTC_BELOW_MIN_HASHRATE | typeof SATRUSH_ERROR__ONE_BTC_BELOW_THRESHOLD | typeof SATRUSH_ERROR__ONE_BTC_NO_PARTICIPANTS | typeof SATRUSH_ERROR__ONE_BTC_NOT_A_WINNER | typeof SATRUSH_ERROR__ONE_BTC_NOT_OPEN | typeof SATRUSH_ERROR__ONE_BTC_NOT_SETTLED | typeof SATRUSH_ERROR__ONE_BTC_NOT_TRIGGERABLE | typeof SATRUSH_ERROR__ONE_BTC_WINNING_TICKET_LOCKED | typeof SATRUSH_ERROR__ROUND_IN_PROGRESS | typeof SATRUSH_ERROR__ROUND_NOT_ACTIVE | typeof SATRUSH_ERROR__ROUND_NOT_REVEALED | typeof SATRUSH_ERROR__ROUND_NOT_SETTLED | typeof SATRUSH_ERROR__ROUND_WINDOW_CLOSED | typeof SATRUSH_ERROR__SLIPPAGE_EXCEEDED | typeof SATRUSH_ERROR__STRIKE_ALREADY_TRIGGERED | typeof SATRUSH_ERROR__STRIKE_BELOW_THRESHOLD | typeof SATRUSH_ERROR__SWAP_OVERSPENT | typeof SATRUSH_ERROR__TREASURY_EMPTY | typeof SATRUSH_ERROR__UNAUTHORIZED;
1533
+ /** InsufficientAutomationBalance: Automation balance cannot cover the per-round gross cost */
1534
+ declare const SATRUSH_ERROR__INSUFFICIENT_AUTOMATION_BALANCE = 6052;
1535
+ /** InvalidAutomationAmount: Automation amount must be greater than zero */
1536
+ declare const SATRUSH_ERROR__INVALID_AUTOMATION_AMOUNT = 6053;
1537
+ /** InvalidAutomationStrategyMask: Selection mask does not match the automation strategy */
1538
+ declare const SATRUSH_ERROR__INVALID_AUTOMATION_STRATEGY_MASK = 6054;
1539
+ type SatrushError = typeof SATRUSH_ERROR__ALREADY_REVEALED | typeof SATRUSH_ERROR__ALREADY_SETTLED | typeof SATRUSH_ERROR__ALREADY_SWAPPED | typeof SATRUSH_ERROR__BOARD_ALREADY_BOOTSTRAPPED | typeof SATRUSH_ERROR__DEPLOYMENT_NOT_SETTLED | typeof SATRUSH_ERROR__EPOCH_ALREADY_CLAIMED | typeof SATRUSH_ERROR__EPOCH_BELOW_MIN_HASHRATE | typeof SATRUSH_ERROR__EPOCH_BELOW_THRESHOLD | typeof SATRUSH_ERROR__EPOCH_INVALID_PAGE | typeof SATRUSH_ERROR__EPOCH_MAX_PARTICIPANTS | typeof SATRUSH_ERROR__EPOCH_NOT_A_WINNER | typeof SATRUSH_ERROR__EPOCH_NOT_OPEN | typeof SATRUSH_ERROR__EPOCH_NOT_SETTLED | typeof SATRUSH_ERROR__EPOCH_NOT_SETTLING | typeof SATRUSH_ERROR__EPOCH_PAGE_ALREADY_SEALED | typeof SATRUSH_ERROR__EPOCH_PAGE_NOT_SEALED | typeof SATRUSH_ERROR__EPOCH_SEAL_MISMATCH | typeof SATRUSH_ERROR__EPOCH_WINDOW_NOT_ELAPSED | typeof SATRUSH_ERROR__INSUFFICIENT_AUTOMATION_BALANCE | typeof SATRUSH_ERROR__INSUFFICIENT_HASHRATE | typeof SATRUSH_ERROR__INSUFFICIENT_SHARES | typeof SATRUSH_ERROR__INSUFFICIENT_UNCLAIMED_USD | typeof SATRUSH_ERROR__INVALID_AUTOMATION_AMOUNT | typeof SATRUSH_ERROR__INVALID_AUTOMATION_STRATEGY_MASK | typeof SATRUSH_ERROR__INVALID_CLAIM_AMOUNT | typeof SATRUSH_ERROR__INVALID_DEPLOYMENT_AMOUNT | typeof SATRUSH_ERROR__INVALID_ENTROPY | typeof SATRUSH_ERROR__INVALID_JUPITER_ROUTE | typeof SATRUSH_ERROR__INVALID_ROUND_DURATION | typeof SATRUSH_ERROR__INVALID_ROUND_ID | typeof SATRUSH_ERROR__INVALID_SELECTION_MASK | typeof SATRUSH_ERROR__INVALID_SHARE_AMOUNT | typeof SATRUSH_ERROR__INVALID_SLOT_HASH | typeof SATRUSH_ERROR__INVALID_SWAP_PROGRAM | typeof SATRUSH_ERROR__MATH_OVERFLOW | typeof SATRUSH_ERROR__MATH_UNDERFLOW | typeof SATRUSH_ERROR__ONE_BTC_BELOW_MIN_HASHRATE | typeof SATRUSH_ERROR__ONE_BTC_BELOW_THRESHOLD | typeof SATRUSH_ERROR__ONE_BTC_NO_PARTICIPANTS | typeof SATRUSH_ERROR__ONE_BTC_NOT_A_WINNER | typeof SATRUSH_ERROR__ONE_BTC_NOT_OPEN | typeof SATRUSH_ERROR__ONE_BTC_NOT_SETTLED | typeof SATRUSH_ERROR__ONE_BTC_NOT_TRIGGERABLE | typeof SATRUSH_ERROR__ONE_BTC_WINNING_TICKET_LOCKED | typeof SATRUSH_ERROR__ROUND_IN_PROGRESS | typeof SATRUSH_ERROR__ROUND_NOT_ACTIVE | typeof SATRUSH_ERROR__ROUND_NOT_REVEALED | typeof SATRUSH_ERROR__ROUND_NOT_SETTLED | typeof SATRUSH_ERROR__ROUND_WINDOW_CLOSED | typeof SATRUSH_ERROR__SLIPPAGE_EXCEEDED | typeof SATRUSH_ERROR__STRIKE_ALREADY_TRIGGERED | typeof SATRUSH_ERROR__STRIKE_BELOW_THRESHOLD | typeof SATRUSH_ERROR__SWAP_OVERSPENT | typeof SATRUSH_ERROR__TREASURY_EMPTY | typeof SATRUSH_ERROR__UNAUTHORIZED;
1412
1540
  declare function getSatrushErrorMessage(code: SatrushError): string;
1413
1541
  declare function isSatrushError<TProgramErrorCode extends SatrushError>(error: unknown, transactionMessage: {
1414
1542
  instructions: Record<number, {
@@ -1522,6 +1650,21 @@ declare function findOneBtcVaultIterationPda(config?: {
1522
1650
  programAddress?: Address | undefined;
1523
1651
  }): Promise<ProgramDerivedAddress>;
1524
1652
 
1653
+ /**
1654
+ * This code was AUTOGENERATED using the Codama library.
1655
+ * Please DO NOT EDIT THIS FILE, instead use visitors
1656
+ * to add features, then rerun Codama to update it.
1657
+ *
1658
+ * @see https://github.com/codama-idl/codama
1659
+ */
1660
+
1661
+ type PublicAutomationSeeds = {
1662
+ authority: Address;
1663
+ };
1664
+ declare function findPublicAutomationPda(seeds: PublicAutomationSeeds, config?: {
1665
+ programAddress?: Address | undefined;
1666
+ }): Promise<ProgramDerivedAddress>;
1667
+
1525
1668
  /**
1526
1669
  * This code was AUTOGENERATED using the Codama library.
1527
1670
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -1577,11 +1720,12 @@ declare enum SatrushAccount {
1577
1720
  OneBtcVault = 6,
1578
1721
  OneBtcVaultEntry = 7,
1579
1722
  OneBtcVaultIteration = 8,
1580
- PublicDeployment = 9,
1581
- Round = 10,
1582
- SatrushConfig = 11,
1583
- SatsVault = 12,
1584
- Treasury = 13
1723
+ PublicAutomation = 9,
1724
+ PublicDeployment = 10,
1725
+ Round = 11,
1726
+ SatrushConfig = 12,
1727
+ SatsVault = 13,
1728
+ Treasury = 14
1585
1729
  }
1586
1730
  declare function identifySatrushAccount(account: {
1587
1731
  data: ReadonlyUint8Array;
@@ -1589,34 +1733,38 @@ declare function identifySatrushAccount(account: {
1589
1733
  declare enum SatrushInstruction {
1590
1734
  BuyEpochTickets = 0,
1591
1735
  BuyOneBtcTickets = 1,
1592
- ClaimEpochReward = 2,
1593
- ClaimOneBtcReward = 3,
1594
- ClaimSats = 4,
1595
- ClaimUsd = 5,
1596
- CloseEpochEntry = 6,
1597
- CloseEpochIteration = 7,
1598
- CloseEpochPage = 8,
1599
- CloseOneBtcIteration = 9,
1600
- CloseOneBtcTicket = 10,
1601
- CreateBoard = 11,
1602
- CreateEpochVault = 12,
1603
- CreateOneBtcVault = 13,
1604
- CreateSatrushConfig = 14,
1605
- CreateSatsVault = 15,
1606
- CreateTreasury = 16,
1607
- DeployPublic = 17,
1608
- RotateRound = 18,
1609
- SealEpochPage = 19,
1610
- SelectEpochWinner = 20,
1611
- SettleDeployPublic = 21,
1612
- SwapEpochStake = 22,
1613
- SwapOneBtcStake = 23,
1614
- SwapRoundStake = 24,
1615
- SwapStrikeStake = 25,
1616
- TriggerEpochDraw = 26,
1617
- TriggerOneBtcDraw = 27,
1618
- UpdateBoardRoundDuration = 28,
1619
- WithdrawProtocolFees = 29
1736
+ CancelPublicAutomation = 2,
1737
+ ClaimEpochReward = 3,
1738
+ ClaimOneBtcReward = 4,
1739
+ ClaimSats = 5,
1740
+ ClaimUsd = 6,
1741
+ CloseEpochEntry = 7,
1742
+ CloseEpochIteration = 8,
1743
+ CloseEpochPage = 9,
1744
+ CloseOneBtcIteration = 10,
1745
+ CloseOneBtcTicket = 11,
1746
+ CreateBoard = 12,
1747
+ CreateEpochVault = 13,
1748
+ CreateOneBtcVault = 14,
1749
+ CreatePublicAutomation = 15,
1750
+ CreateSatrushConfig = 16,
1751
+ CreateSatsVault = 17,
1752
+ CreateTreasury = 18,
1753
+ DeployPublic = 19,
1754
+ ExecutePublicAutomation = 20,
1755
+ RotateRound = 21,
1756
+ SealEpochPage = 22,
1757
+ SelectEpochWinner = 23,
1758
+ SettleDeployPublic = 24,
1759
+ SwapEpochStake = 25,
1760
+ SwapOneBtcStake = 26,
1761
+ SwapRoundStake = 27,
1762
+ SwapStrikeStake = 28,
1763
+ TopUpPublicAutomation = 29,
1764
+ TriggerEpochDraw = 30,
1765
+ TriggerOneBtcDraw = 31,
1766
+ UpdateBoardRoundDuration = 32,
1767
+ WithdrawProtocolFees = 33
1620
1768
  }
1621
1769
  declare function identifySatrushInstruction(instruction: {
1622
1770
  data: ReadonlyUint8Array;
@@ -1626,6 +1774,8 @@ type ParsedSatrushInstruction<TProgram extends string = 'ADp1CgM1xEhyAoXL7zdqSsb
1626
1774
  } & ParsedBuyEpochTicketsInstruction<TProgram>) | ({
1627
1775
  instructionType: SatrushInstruction.BuyOneBtcTickets;
1628
1776
  } & ParsedBuyOneBtcTicketsInstruction<TProgram>) | ({
1777
+ instructionType: SatrushInstruction.CancelPublicAutomation;
1778
+ } & ParsedCancelPublicAutomationInstruction<TProgram>) | ({
1629
1779
  instructionType: SatrushInstruction.ClaimEpochReward;
1630
1780
  } & ParsedClaimEpochRewardInstruction<TProgram>) | ({
1631
1781
  instructionType: SatrushInstruction.ClaimOneBtcReward;
@@ -1650,6 +1800,8 @@ type ParsedSatrushInstruction<TProgram extends string = 'ADp1CgM1xEhyAoXL7zdqSsb
1650
1800
  } & ParsedCreateEpochVaultInstruction<TProgram>) | ({
1651
1801
  instructionType: SatrushInstruction.CreateOneBtcVault;
1652
1802
  } & ParsedCreateOneBtcVaultInstruction<TProgram>) | ({
1803
+ instructionType: SatrushInstruction.CreatePublicAutomation;
1804
+ } & ParsedCreatePublicAutomationInstruction<TProgram>) | ({
1653
1805
  instructionType: SatrushInstruction.CreateSatrushConfig;
1654
1806
  } & ParsedCreateSatrushConfigInstruction<TProgram>) | ({
1655
1807
  instructionType: SatrushInstruction.CreateSatsVault;
@@ -1658,6 +1810,8 @@ type ParsedSatrushInstruction<TProgram extends string = 'ADp1CgM1xEhyAoXL7zdqSsb
1658
1810
  } & ParsedCreateTreasuryInstruction<TProgram>) | ({
1659
1811
  instructionType: SatrushInstruction.DeployPublic;
1660
1812
  } & ParsedDeployPublicInstruction<TProgram>) | ({
1813
+ instructionType: SatrushInstruction.ExecutePublicAutomation;
1814
+ } & ParsedExecutePublicAutomationInstruction<TProgram>) | ({
1661
1815
  instructionType: SatrushInstruction.RotateRound;
1662
1816
  } & ParsedRotateRoundInstruction<TProgram>) | ({
1663
1817
  instructionType: SatrushInstruction.SealEpochPage;
@@ -1674,6 +1828,8 @@ type ParsedSatrushInstruction<TProgram extends string = 'ADp1CgM1xEhyAoXL7zdqSsb
1674
1828
  } & ParsedSwapRoundStakeInstruction<TProgram>) | ({
1675
1829
  instructionType: SatrushInstruction.SwapStrikeStake;
1676
1830
  } & ParsedSwapStrikeStakeInstruction<TProgram>) | ({
1831
+ instructionType: SatrushInstruction.TopUpPublicAutomation;
1832
+ } & ParsedTopUpPublicAutomationInstruction<TProgram>) | ({
1677
1833
  instructionType: SatrushInstruction.TriggerEpochDraw;
1678
1834
  } & ParsedTriggerEpochDrawInstruction<TProgram>) | ({
1679
1835
  instructionType: SatrushInstruction.TriggerOneBtcDraw;
@@ -1701,6 +1857,7 @@ type SatrushPluginAccounts = {
1701
1857
  oneBtcVault: ReturnType<typeof getOneBtcVaultCodec> & SelfFetchFunctions<OneBtcVaultArgs, OneBtcVault>;
1702
1858
  oneBtcVaultEntry: ReturnType<typeof getOneBtcVaultEntryCodec> & SelfFetchFunctions<OneBtcVaultEntryArgs, OneBtcVaultEntry>;
1703
1859
  oneBtcVaultIteration: ReturnType<typeof getOneBtcVaultIterationCodec> & SelfFetchFunctions<OneBtcVaultIterationArgs, OneBtcVaultIteration>;
1860
+ publicAutomation: ReturnType<typeof getPublicAutomationCodec> & SelfFetchFunctions<PublicAutomationArgs, PublicAutomation>;
1704
1861
  publicDeployment: ReturnType<typeof getPublicDeploymentCodec> & SelfFetchFunctions<PublicDeploymentArgs, PublicDeployment>;
1705
1862
  round: ReturnType<typeof getRoundCodec> & SelfFetchFunctions<RoundArgs, Round>;
1706
1863
  satrushConfig: ReturnType<typeof getSatrushConfigCodec> & SelfFetchFunctions<SatrushConfigArgs, SatrushConfig>;
@@ -1710,6 +1867,7 @@ type SatrushPluginAccounts = {
1710
1867
  type SatrushPluginInstructions = {
1711
1868
  buyEpochTickets: (input: BuyEpochTicketsAsyncInput) => ReturnType<typeof getBuyEpochTicketsInstructionAsync> & SelfPlanAndSendFunctions;
1712
1869
  buyOneBtcTickets: (input: BuyOneBtcTicketsAsyncInput) => ReturnType<typeof getBuyOneBtcTicketsInstructionAsync> & SelfPlanAndSendFunctions;
1870
+ cancelPublicAutomation: (input: CancelPublicAutomationAsyncInput) => ReturnType<typeof getCancelPublicAutomationInstructionAsync> & SelfPlanAndSendFunctions;
1713
1871
  claimEpochReward: (input: ClaimEpochRewardAsyncInput) => ReturnType<typeof getClaimEpochRewardInstructionAsync> & SelfPlanAndSendFunctions;
1714
1872
  claimOneBtcReward: (input: ClaimOneBtcRewardAsyncInput) => ReturnType<typeof getClaimOneBtcRewardInstructionAsync> & SelfPlanAndSendFunctions;
1715
1873
  claimSats: (input: ClaimSatsAsyncInput) => ReturnType<typeof getClaimSatsInstructionAsync> & SelfPlanAndSendFunctions;
@@ -1722,10 +1880,12 @@ type SatrushPluginInstructions = {
1722
1880
  createBoard: (input: CreateBoardAsyncInput) => ReturnType<typeof getCreateBoardInstructionAsync> & SelfPlanAndSendFunctions;
1723
1881
  createEpochVault: (input: CreateEpochVaultAsyncInput) => ReturnType<typeof getCreateEpochVaultInstructionAsync> & SelfPlanAndSendFunctions;
1724
1882
  createOneBtcVault: (input: CreateOneBtcVaultAsyncInput) => ReturnType<typeof getCreateOneBtcVaultInstructionAsync> & SelfPlanAndSendFunctions;
1883
+ createPublicAutomation: (input: CreatePublicAutomationAsyncInput) => ReturnType<typeof getCreatePublicAutomationInstructionAsync> & SelfPlanAndSendFunctions;
1725
1884
  createSatrushConfig: (input: CreateSatrushConfigAsyncInput) => ReturnType<typeof getCreateSatrushConfigInstructionAsync> & SelfPlanAndSendFunctions;
1726
1885
  createSatsVault: (input: CreateSatsVaultAsyncInput) => ReturnType<typeof getCreateSatsVaultInstructionAsync> & SelfPlanAndSendFunctions;
1727
1886
  createTreasury: (input: CreateTreasuryAsyncInput) => ReturnType<typeof getCreateTreasuryInstructionAsync> & SelfPlanAndSendFunctions;
1728
1887
  deployPublic: (input: DeployPublicAsyncInput) => ReturnType<typeof getDeployPublicInstructionAsync> & SelfPlanAndSendFunctions;
1888
+ executePublicAutomation: (input: ExecutePublicAutomationAsyncInput) => ReturnType<typeof getExecutePublicAutomationInstructionAsync> & SelfPlanAndSendFunctions;
1729
1889
  rotateRound: (input: RotateRoundAsyncInput) => ReturnType<typeof getRotateRoundInstructionAsync> & SelfPlanAndSendFunctions;
1730
1890
  sealEpochPage: (input: SealEpochPageAsyncInput) => ReturnType<typeof getSealEpochPageInstructionAsync> & SelfPlanAndSendFunctions;
1731
1891
  selectEpochWinner: (input: SelectEpochWinnerAsyncInput) => ReturnType<typeof getSelectEpochWinnerInstructionAsync> & SelfPlanAndSendFunctions;
@@ -1734,6 +1894,7 @@ type SatrushPluginInstructions = {
1734
1894
  swapOneBtcStake: (input: SwapOneBtcStakeAsyncInput) => ReturnType<typeof getSwapOneBtcStakeInstructionAsync> & SelfPlanAndSendFunctions;
1735
1895
  swapRoundStake: (input: SwapRoundStakeAsyncInput) => ReturnType<typeof getSwapRoundStakeInstructionAsync> & SelfPlanAndSendFunctions;
1736
1896
  swapStrikeStake: (input: SwapStrikeStakeAsyncInput) => ReturnType<typeof getSwapStrikeStakeInstructionAsync> & SelfPlanAndSendFunctions;
1897
+ topUpPublicAutomation: (input: TopUpPublicAutomationAsyncInput) => ReturnType<typeof getTopUpPublicAutomationInstructionAsync> & SelfPlanAndSendFunctions;
1737
1898
  triggerEpochDraw: (input: TriggerEpochDrawAsyncInput) => ReturnType<typeof getTriggerEpochDrawInstructionAsync> & SelfPlanAndSendFunctions;
1738
1899
  triggerOneBtcDraw: (input: TriggerOneBtcDrawAsyncInput) => ReturnType<typeof getTriggerOneBtcDrawInstructionAsync> & SelfPlanAndSendFunctions;
1739
1900
  updateBoardRoundDuration: (input: UpdateBoardRoundDurationAsyncInput) => ReturnType<typeof getUpdateBoardRoundDurationInstructionAsync> & SelfPlanAndSendFunctions;
@@ -1744,6 +1905,7 @@ type SatrushPluginPdas = {
1744
1905
  epochVault: typeof findEpochVaultPda;
1745
1906
  oneBtcVault: typeof findOneBtcVaultPda;
1746
1907
  satrushConfig: typeof findSatrushConfigPda;
1908
+ publicAutomation: typeof findPublicAutomationPda;
1747
1909
  satsVault: typeof findSatsVaultPda;
1748
1910
  board: typeof findBoardPda;
1749
1911
  initialRound: typeof findInitialRoundPda;
@@ -1918,6 +2080,83 @@ type ParsedBuyOneBtcTicketsInstruction<TProgram extends string = typeof SATRUSH_
1918
2080
  };
1919
2081
  declare function parseBuyOneBtcTicketsInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedBuyOneBtcTicketsInstruction<TProgram, TAccountMetas>;
1920
2082
 
2083
+ /**
2084
+ * This code was AUTOGENERATED using the Codama library.
2085
+ * Please DO NOT EDIT THIS FILE, instead use visitors
2086
+ * to add features, then rerun Codama to update it.
2087
+ *
2088
+ * @see https://github.com/codama-idl/codama
2089
+ */
2090
+
2091
+ declare const CANCEL_PUBLIC_AUTOMATION_DISCRIMINATOR: ReadonlyUint8Array;
2092
+ declare function getCancelPublicAutomationDiscriminatorBytes(): ReadonlyUint8Array;
2093
+ type CancelPublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSatrushConfig extends string | AccountMeta<string> = string, TAccountPublicAutomation extends string | AccountMeta<string> = string, TAccountUsdMint extends string | AccountMeta<string> = string, TAccountAutomationUsdAta extends string | AccountMeta<string> = string, TAccountAuthorityUsdAta extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TAccountAssociatedTokenProgram extends string | AccountMeta<string> = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL', TAccountSystemProgram extends string | AccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
2094
+ TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority,
2095
+ TAccountSatrushConfig extends string ? ReadonlyAccount<TAccountSatrushConfig> : TAccountSatrushConfig,
2096
+ TAccountPublicAutomation extends string ? WritableAccount<TAccountPublicAutomation> : TAccountPublicAutomation,
2097
+ TAccountUsdMint extends string ? ReadonlyAccount<TAccountUsdMint> : TAccountUsdMint,
2098
+ TAccountAutomationUsdAta extends string ? WritableAccount<TAccountAutomationUsdAta> : TAccountAutomationUsdAta,
2099
+ TAccountAuthorityUsdAta extends string ? WritableAccount<TAccountAuthorityUsdAta> : TAccountAuthorityUsdAta,
2100
+ TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram,
2101
+ TAccountAssociatedTokenProgram extends string ? ReadonlyAccount<TAccountAssociatedTokenProgram> : TAccountAssociatedTokenProgram,
2102
+ TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
2103
+ ...TRemainingAccounts
2104
+ ]>;
2105
+ type CancelPublicAutomationInstructionData = {
2106
+ discriminator: ReadonlyUint8Array;
2107
+ };
2108
+ type CancelPublicAutomationInstructionDataArgs = {};
2109
+ declare function getCancelPublicAutomationInstructionDataEncoder(): FixedSizeEncoder<CancelPublicAutomationInstructionDataArgs>;
2110
+ declare function getCancelPublicAutomationInstructionDataDecoder(): FixedSizeDecoder<CancelPublicAutomationInstructionData>;
2111
+ declare function getCancelPublicAutomationInstructionDataCodec(): FixedSizeCodec<CancelPublicAutomationInstructionDataArgs, CancelPublicAutomationInstructionData>;
2112
+ type CancelPublicAutomationAsyncInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAutomationUsdAta extends string = string, TAccountAuthorityUsdAta extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string> = {
2113
+ authority: TransactionSigner<TAccountAuthority>;
2114
+ satrushConfig?: Address<TAccountSatrushConfig>;
2115
+ publicAutomation?: Address<TAccountPublicAutomation>;
2116
+ usdMint: Address<TAccountUsdMint>;
2117
+ automationUsdAta?: Address<TAccountAutomationUsdAta>;
2118
+ /** Refund destination, created if the user closed their USD account. */
2119
+ authorityUsdAta?: Address<TAccountAuthorityUsdAta>;
2120
+ tokenProgram?: Address<TAccountTokenProgram>;
2121
+ associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
2122
+ systemProgram?: Address<TAccountSystemProgram>;
2123
+ };
2124
+ declare function getCancelPublicAutomationInstructionAsync<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAutomationUsdAta extends string, TAccountAuthorityUsdAta extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: CancelPublicAutomationAsyncInput<TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountAuthorityUsdAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>, config?: {
2125
+ programAddress?: TProgramAddress;
2126
+ }): Promise<CancelPublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountAuthorityUsdAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>>;
2127
+ type CancelPublicAutomationInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAutomationUsdAta extends string = string, TAccountAuthorityUsdAta extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string> = {
2128
+ authority: TransactionSigner<TAccountAuthority>;
2129
+ satrushConfig: Address<TAccountSatrushConfig>;
2130
+ publicAutomation: Address<TAccountPublicAutomation>;
2131
+ usdMint: Address<TAccountUsdMint>;
2132
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
2133
+ /** Refund destination, created if the user closed their USD account. */
2134
+ authorityUsdAta: Address<TAccountAuthorityUsdAta>;
2135
+ tokenProgram?: Address<TAccountTokenProgram>;
2136
+ associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
2137
+ systemProgram?: Address<TAccountSystemProgram>;
2138
+ };
2139
+ declare function getCancelPublicAutomationInstruction<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAutomationUsdAta extends string, TAccountAuthorityUsdAta extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: CancelPublicAutomationInput<TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountAuthorityUsdAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>, config?: {
2140
+ programAddress?: TProgramAddress;
2141
+ }): CancelPublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountAuthorityUsdAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>;
2142
+ type ParsedCancelPublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
2143
+ programAddress: Address<TProgram>;
2144
+ accounts: {
2145
+ authority: TAccountMetas[0];
2146
+ satrushConfig: TAccountMetas[1];
2147
+ publicAutomation: TAccountMetas[2];
2148
+ usdMint: TAccountMetas[3];
2149
+ automationUsdAta: TAccountMetas[4];
2150
+ /** Refund destination, created if the user closed their USD account. */
2151
+ authorityUsdAta: TAccountMetas[5];
2152
+ tokenProgram: TAccountMetas[6];
2153
+ associatedTokenProgram: TAccountMetas[7];
2154
+ systemProgram: TAccountMetas[8];
2155
+ };
2156
+ data: CancelPublicAutomationInstructionData;
2157
+ };
2158
+ declare function parseCancelPublicAutomationInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedCancelPublicAutomationInstruction<TProgram, TAccountMetas>;
2159
+
1921
2160
  /**
1922
2161
  * This code was AUTOGENERATED using the Codama library.
1923
2162
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -2789,6 +3028,147 @@ type ParsedCreateOneBtcVaultInstruction<TProgram extends string = typeof SATRUSH
2789
3028
  };
2790
3029
  declare function parseCreateOneBtcVaultInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedCreateOneBtcVaultInstruction<TProgram, TAccountMetas>;
2791
3030
 
3031
+ /**
3032
+ * This code was AUTOGENERATED using the Codama library.
3033
+ * Please DO NOT EDIT THIS FILE, instead use visitors
3034
+ * to add features, then rerun Codama to update it.
3035
+ *
3036
+ * @see https://github.com/codama-idl/codama
3037
+ */
3038
+
3039
+ declare const CREATE_PUBLIC_AUTOMATION_DISCRIMINATOR: ReadonlyUint8Array;
3040
+ declare function getCreatePublicAutomationDiscriminatorBytes(): ReadonlyUint8Array;
3041
+ type CreatePublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSatrushConfig extends string | AccountMeta<string> = string, TAccountPublicAutomation extends string | AccountMeta<string> = string, TAccountUsdMint extends string | AccountMeta<string> = string, TAccountAuthorityUsdAta extends string | AccountMeta<string> = string, TAccountAutomationUsdAta extends string | AccountMeta<string> = string, TAccountMiner extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TAccountAssociatedTokenProgram extends string | AccountMeta<string> = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL', TAccountSystemProgram extends string | AccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
3042
+ TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3043
+ TAccountSatrushConfig extends string ? ReadonlyAccount<TAccountSatrushConfig> : TAccountSatrushConfig,
3044
+ TAccountPublicAutomation extends string ? WritableAccount<TAccountPublicAutomation> : TAccountPublicAutomation,
3045
+ TAccountUsdMint extends string ? ReadonlyAccount<TAccountUsdMint> : TAccountUsdMint,
3046
+ TAccountAuthorityUsdAta extends string ? WritableAccount<TAccountAuthorityUsdAta> : TAccountAuthorityUsdAta,
3047
+ TAccountAutomationUsdAta extends string ? WritableAccount<TAccountAutomationUsdAta> : TAccountAutomationUsdAta,
3048
+ TAccountMiner extends string ? WritableAccount<TAccountMiner> : TAccountMiner,
3049
+ TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram,
3050
+ TAccountAssociatedTokenProgram extends string ? ReadonlyAccount<TAccountAssociatedTokenProgram> : TAccountAssociatedTokenProgram,
3051
+ TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
3052
+ ...TRemainingAccounts
3053
+ ]>;
3054
+ type CreatePublicAutomationInstructionData = {
3055
+ discriminator: ReadonlyUint8Array;
3056
+ strategy: AutomationStrategy;
3057
+ selectionMask: number;
3058
+ perRoundUsdAmount: bigint;
3059
+ reload: boolean;
3060
+ depositUsdAmount: bigint;
3061
+ };
3062
+ type CreatePublicAutomationInstructionDataArgs = {
3063
+ strategy: AutomationStrategyArgs;
3064
+ selectionMask: number;
3065
+ perRoundUsdAmount: number | bigint;
3066
+ reload: boolean;
3067
+ depositUsdAmount: number | bigint;
3068
+ };
3069
+ declare function getCreatePublicAutomationInstructionDataEncoder(): FixedSizeEncoder<CreatePublicAutomationInstructionDataArgs>;
3070
+ declare function getCreatePublicAutomationInstructionDataDecoder(): FixedSizeDecoder<CreatePublicAutomationInstructionData>;
3071
+ declare function getCreatePublicAutomationInstructionDataCodec(): FixedSizeCodec<CreatePublicAutomationInstructionDataArgs, CreatePublicAutomationInstructionData>;
3072
+ type CreatePublicAutomationAsyncInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAuthorityUsdAta extends string = string, TAccountAutomationUsdAta extends string = string, TAccountMiner extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string> = {
3073
+ authority: TransactionSigner<TAccountAuthority>;
3074
+ satrushConfig?: Address<TAccountSatrushConfig>;
3075
+ /** One automation per authority: `init` fails if one already exists. */
3076
+ publicAutomation?: Address<TAccountPublicAutomation>;
3077
+ usdMint: Address<TAccountUsdMint>;
3078
+ /** User's USD account the deposit is pulled from. */
3079
+ authorityUsdAta: Address<TAccountAuthorityUsdAta>;
3080
+ /**
3081
+ * The automation's escrow, created here. `init_if_needed` rather than
3082
+ * `init`: the ATA address is derived from the automation PDA/USD mint
3083
+ * alone, so anyone can pre-create it before this instruction runs; with
3084
+ * plain `init` that pre-creation would permanently block this authority
3085
+ * from ever creating their automation. A pre-existing balance is treated
3086
+ * as a donation — it is swept out by `cancel`.
3087
+ */
3088
+ automationUsdAta?: Address<TAccountAutomationUsdAta>;
3089
+ /**
3090
+ * Miner profile for `authority`, created here if missing (user pays rent)
3091
+ * so the crank-side execute never has to create it.
3092
+ */
3093
+ miner?: Address<TAccountMiner>;
3094
+ tokenProgram?: Address<TAccountTokenProgram>;
3095
+ associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
3096
+ systemProgram?: Address<TAccountSystemProgram>;
3097
+ strategy: CreatePublicAutomationInstructionDataArgs['strategy'];
3098
+ selectionMask: CreatePublicAutomationInstructionDataArgs['selectionMask'];
3099
+ perRoundUsdAmount: CreatePublicAutomationInstructionDataArgs['perRoundUsdAmount'];
3100
+ reload: CreatePublicAutomationInstructionDataArgs['reload'];
3101
+ depositUsdAmount: CreatePublicAutomationInstructionDataArgs['depositUsdAmount'];
3102
+ };
3103
+ declare function getCreatePublicAutomationInstructionAsync<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAuthorityUsdAta extends string, TAccountAutomationUsdAta extends string, TAccountMiner extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: CreatePublicAutomationAsyncInput<TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountMiner, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>, config?: {
3104
+ programAddress?: TProgramAddress;
3105
+ }): Promise<CreatePublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountMiner, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>>;
3106
+ type CreatePublicAutomationInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAuthorityUsdAta extends string = string, TAccountAutomationUsdAta extends string = string, TAccountMiner extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string> = {
3107
+ authority: TransactionSigner<TAccountAuthority>;
3108
+ satrushConfig: Address<TAccountSatrushConfig>;
3109
+ /** One automation per authority: `init` fails if one already exists. */
3110
+ publicAutomation: Address<TAccountPublicAutomation>;
3111
+ usdMint: Address<TAccountUsdMint>;
3112
+ /** User's USD account the deposit is pulled from. */
3113
+ authorityUsdAta: Address<TAccountAuthorityUsdAta>;
3114
+ /**
3115
+ * The automation's escrow, created here. `init_if_needed` rather than
3116
+ * `init`: the ATA address is derived from the automation PDA/USD mint
3117
+ * alone, so anyone can pre-create it before this instruction runs; with
3118
+ * plain `init` that pre-creation would permanently block this authority
3119
+ * from ever creating their automation. A pre-existing balance is treated
3120
+ * as a donation — it is swept out by `cancel`.
3121
+ */
3122
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
3123
+ /**
3124
+ * Miner profile for `authority`, created here if missing (user pays rent)
3125
+ * so the crank-side execute never has to create it.
3126
+ */
3127
+ miner: Address<TAccountMiner>;
3128
+ tokenProgram?: Address<TAccountTokenProgram>;
3129
+ associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
3130
+ systemProgram?: Address<TAccountSystemProgram>;
3131
+ strategy: CreatePublicAutomationInstructionDataArgs['strategy'];
3132
+ selectionMask: CreatePublicAutomationInstructionDataArgs['selectionMask'];
3133
+ perRoundUsdAmount: CreatePublicAutomationInstructionDataArgs['perRoundUsdAmount'];
3134
+ reload: CreatePublicAutomationInstructionDataArgs['reload'];
3135
+ depositUsdAmount: CreatePublicAutomationInstructionDataArgs['depositUsdAmount'];
3136
+ };
3137
+ declare function getCreatePublicAutomationInstruction<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAuthorityUsdAta extends string, TAccountAutomationUsdAta extends string, TAccountMiner extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: CreatePublicAutomationInput<TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountMiner, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>, config?: {
3138
+ programAddress?: TProgramAddress;
3139
+ }): CreatePublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountMiner, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram>;
3140
+ type ParsedCreatePublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
3141
+ programAddress: Address<TProgram>;
3142
+ accounts: {
3143
+ authority: TAccountMetas[0];
3144
+ satrushConfig: TAccountMetas[1];
3145
+ /** One automation per authority: `init` fails if one already exists. */
3146
+ publicAutomation: TAccountMetas[2];
3147
+ usdMint: TAccountMetas[3];
3148
+ /** User's USD account the deposit is pulled from. */
3149
+ authorityUsdAta: TAccountMetas[4];
3150
+ /**
3151
+ * The automation's escrow, created here. `init_if_needed` rather than
3152
+ * `init`: the ATA address is derived from the automation PDA/USD mint
3153
+ * alone, so anyone can pre-create it before this instruction runs; with
3154
+ * plain `init` that pre-creation would permanently block this authority
3155
+ * from ever creating their automation. A pre-existing balance is treated
3156
+ * as a donation — it is swept out by `cancel`.
3157
+ */
3158
+ automationUsdAta: TAccountMetas[5];
3159
+ /**
3160
+ * Miner profile for `authority`, created here if missing (user pays rent)
3161
+ * so the crank-side execute never has to create it.
3162
+ */
3163
+ miner: TAccountMetas[6];
3164
+ tokenProgram: TAccountMetas[7];
3165
+ associatedTokenProgram: TAccountMetas[8];
3166
+ systemProgram: TAccountMetas[9];
3167
+ };
3168
+ data: CreatePublicAutomationInstructionData;
3169
+ };
3170
+ declare function parseCreatePublicAutomationInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedCreatePublicAutomationInstruction<TProgram, TAccountMetas>;
3171
+
2792
3172
  /**
2793
3173
  * This code was AUTOGENERATED using the Codama library.
2794
3174
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -3218,6 +3598,209 @@ type ParsedDeployPublicInstruction<TProgram extends string = typeof SATRUSH_PROG
3218
3598
  };
3219
3599
  declare function parseDeployPublicInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedDeployPublicInstruction<TProgram, TAccountMetas>;
3220
3600
 
3601
+ /**
3602
+ * This code was AUTOGENERATED using the Codama library.
3603
+ * Please DO NOT EDIT THIS FILE, instead use visitors
3604
+ * to add features, then rerun Codama to update it.
3605
+ *
3606
+ * @see https://github.com/codama-idl/codama
3607
+ */
3608
+
3609
+ declare const EXECUTE_PUBLIC_AUTOMATION_DISCRIMINATOR: ReadonlyUint8Array;
3610
+ declare function getExecutePublicAutomationDiscriminatorBytes(): ReadonlyUint8Array;
3611
+ type ExecutePublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSatrushConfig extends string | AccountMeta<string> = string, TAccountBoard extends string | AccountMeta<string> = string, TAccountRound extends string | AccountMeta<string> = string, TAccountPublicAutomation extends string | AccountMeta<string> = string, TAccountUsdMint extends string | AccountMeta<string> = string, TAccountAutomationUsdAta extends string | AccountMeta<string> = string, TAccountBoardUsdAta extends string | AccountMeta<string> = string, TAccountPublicDeployment extends string | AccountMeta<string> = string, TAccountMiner extends string | AccountMeta<string> = string, TAccountEpochVault extends string | AccountMeta<string> = string, TAccountEpochVaultUsdAta extends string | AccountMeta<string> = string, TAccountOneBtcVault extends string | AccountMeta<string> = string, TAccountOneBtcVaultUsdAta extends string | AccountMeta<string> = string, TAccountTreasury extends string | AccountMeta<string> = string, TAccountTreasuryUsdAta extends string | AccountMeta<string> = string, TAccountSlotHashes extends string | AccountMeta<string> = 'SysvarS1otHashes111111111111111111111111111', TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TAccountSystemProgram extends string | AccountMeta<string> = '11111111111111111111111111111111', TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
3612
+ TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3613
+ TAccountSatrushConfig extends string ? ReadonlyAccount<TAccountSatrushConfig> : TAccountSatrushConfig,
3614
+ TAccountBoard extends string ? WritableAccount<TAccountBoard> : TAccountBoard,
3615
+ TAccountRound extends string ? WritableAccount<TAccountRound> : TAccountRound,
3616
+ TAccountPublicAutomation extends string ? WritableAccount<TAccountPublicAutomation> : TAccountPublicAutomation,
3617
+ TAccountUsdMint extends string ? ReadonlyAccount<TAccountUsdMint> : TAccountUsdMint,
3618
+ TAccountAutomationUsdAta extends string ? WritableAccount<TAccountAutomationUsdAta> : TAccountAutomationUsdAta,
3619
+ TAccountBoardUsdAta extends string ? WritableAccount<TAccountBoardUsdAta> : TAccountBoardUsdAta,
3620
+ TAccountPublicDeployment extends string ? WritableAccount<TAccountPublicDeployment> : TAccountPublicDeployment,
3621
+ TAccountMiner extends string ? WritableAccount<TAccountMiner> : TAccountMiner,
3622
+ TAccountEpochVault extends string ? WritableAccount<TAccountEpochVault> : TAccountEpochVault,
3623
+ TAccountEpochVaultUsdAta extends string ? WritableAccount<TAccountEpochVaultUsdAta> : TAccountEpochVaultUsdAta,
3624
+ TAccountOneBtcVault extends string ? WritableAccount<TAccountOneBtcVault> : TAccountOneBtcVault,
3625
+ TAccountOneBtcVaultUsdAta extends string ? WritableAccount<TAccountOneBtcVaultUsdAta> : TAccountOneBtcVaultUsdAta,
3626
+ TAccountTreasury extends string ? WritableAccount<TAccountTreasury> : TAccountTreasury,
3627
+ TAccountTreasuryUsdAta extends string ? WritableAccount<TAccountTreasuryUsdAta> : TAccountTreasuryUsdAta,
3628
+ TAccountSlotHashes extends string ? ReadonlyAccount<TAccountSlotHashes> : TAccountSlotHashes,
3629
+ TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram,
3630
+ TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
3631
+ ...TRemainingAccounts
3632
+ ]>;
3633
+ type ExecutePublicAutomationInstructionData = {
3634
+ discriminator: ReadonlyUint8Array;
3635
+ selectionMask: Option<number>;
3636
+ };
3637
+ type ExecutePublicAutomationInstructionDataArgs = {
3638
+ selectionMask: OptionOrNullable<number>;
3639
+ };
3640
+ declare function getExecutePublicAutomationInstructionDataEncoder(): Encoder<ExecutePublicAutomationInstructionDataArgs>;
3641
+ declare function getExecutePublicAutomationInstructionDataDecoder(): Decoder<ExecutePublicAutomationInstructionData>;
3642
+ declare function getExecutePublicAutomationInstructionDataCodec(): Codec<ExecutePublicAutomationInstructionDataArgs, ExecutePublicAutomationInstructionData>;
3643
+ type ExecutePublicAutomationAsyncInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountBoard extends string = string, TAccountRound extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAutomationUsdAta extends string = string, TAccountBoardUsdAta extends string = string, TAccountPublicDeployment extends string = string, TAccountMiner extends string = string, TAccountEpochVault extends string = string, TAccountEpochVaultUsdAta extends string = string, TAccountOneBtcVault extends string = string, TAccountOneBtcVaultUsdAta extends string = string, TAccountTreasury extends string = string, TAccountTreasuryUsdAta extends string = string, TAccountSlotHashes extends string = string, TAccountTokenProgram extends string = string, TAccountSystemProgram extends string = string> = {
3644
+ /**
3645
+ * The crank (round authority); pays the deployment rent, recovered at
3646
+ * settle.
3647
+ */
3648
+ authority: TransactionSigner<TAccountAuthority>;
3649
+ satrushConfig?: Address<TAccountSatrushConfig>;
3650
+ board?: Address<TAccountBoard>;
3651
+ /** Round the automation deploys into. Must be the board's current round. */
3652
+ round: Address<TAccountRound>;
3653
+ /**
3654
+ * The automation being executed; its `authority` field keys the
3655
+ * deployment and miner PDAs below. A regular Account (boxed): its fields
3656
+ * feed seeds, which LazyAccount cannot do.
3657
+ */
3658
+ publicAutomation: Address<TAccountPublicAutomation>;
3659
+ usdMint: Address<TAccountUsdMint>;
3660
+ /** The automation's escrow the deploy is funded from. */
3661
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
3662
+ /** Board's USD deposit pool. */
3663
+ boardUsdAta: Address<TAccountBoardUsdAta>;
3664
+ /**
3665
+ * Per-(user, round) deployment record. Init fails if the user already
3666
+ * deployed into this round (manually or via this automation).
3667
+ */
3668
+ publicDeployment: Address<TAccountPublicDeployment>;
3669
+ /**
3670
+ * The user's miner profile; guaranteed to exist by
3671
+ * `create_public_automation`, so no `init_if_needed` here (stack + rent).
3672
+ */
3673
+ miner: Address<TAccountMiner>;
3674
+ epochVault?: Address<TAccountEpochVault>;
3675
+ epochVaultUsdAta: Address<TAccountEpochVaultUsdAta>;
3676
+ oneBtcVault?: Address<TAccountOneBtcVault>;
3677
+ oneBtcVaultUsdAta: Address<TAccountOneBtcVaultUsdAta>;
3678
+ /**
3679
+ * Same rationale as DeployPublic: discriminator + owner checks pin the
3680
+ * singleton; no seeds constraint needed.
3681
+ */
3682
+ treasury: Address<TAccountTreasury>;
3683
+ treasuryUsdAta: Address<TAccountTreasuryUsdAta>;
3684
+ /**
3685
+ * because the sysvar is too large to deserialize. Feeds Random-strategy
3686
+ * mask generation only, but is always passed (cheap).
3687
+ */
3688
+ slotHashes?: Address<TAccountSlotHashes>;
3689
+ tokenProgram?: Address<TAccountTokenProgram>;
3690
+ systemProgram?: Address<TAccountSystemProgram>;
3691
+ selectionMask: ExecutePublicAutomationInstructionDataArgs['selectionMask'];
3692
+ };
3693
+ declare function getExecutePublicAutomationInstructionAsync<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountBoard extends string, TAccountRound extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAutomationUsdAta extends string, TAccountBoardUsdAta extends string, TAccountPublicDeployment extends string, TAccountMiner extends string, TAccountEpochVault extends string, TAccountEpochVaultUsdAta extends string, TAccountOneBtcVault extends string, TAccountOneBtcVaultUsdAta extends string, TAccountTreasury extends string, TAccountTreasuryUsdAta extends string, TAccountSlotHashes extends string, TAccountTokenProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: ExecutePublicAutomationAsyncInput<TAccountAuthority, TAccountSatrushConfig, TAccountBoard, TAccountRound, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountBoardUsdAta, TAccountPublicDeployment, TAccountMiner, TAccountEpochVault, TAccountEpochVaultUsdAta, TAccountOneBtcVault, TAccountOneBtcVaultUsdAta, TAccountTreasury, TAccountTreasuryUsdAta, TAccountSlotHashes, TAccountTokenProgram, TAccountSystemProgram>, config?: {
3694
+ programAddress?: TProgramAddress;
3695
+ }): Promise<ExecutePublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountBoard, TAccountRound, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountBoardUsdAta, TAccountPublicDeployment, TAccountMiner, TAccountEpochVault, TAccountEpochVaultUsdAta, TAccountOneBtcVault, TAccountOneBtcVaultUsdAta, TAccountTreasury, TAccountTreasuryUsdAta, TAccountSlotHashes, TAccountTokenProgram, TAccountSystemProgram>>;
3696
+ type ExecutePublicAutomationInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountBoard extends string = string, TAccountRound extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAutomationUsdAta extends string = string, TAccountBoardUsdAta extends string = string, TAccountPublicDeployment extends string = string, TAccountMiner extends string = string, TAccountEpochVault extends string = string, TAccountEpochVaultUsdAta extends string = string, TAccountOneBtcVault extends string = string, TAccountOneBtcVaultUsdAta extends string = string, TAccountTreasury extends string = string, TAccountTreasuryUsdAta extends string = string, TAccountSlotHashes extends string = string, TAccountTokenProgram extends string = string, TAccountSystemProgram extends string = string> = {
3697
+ /**
3698
+ * The crank (round authority); pays the deployment rent, recovered at
3699
+ * settle.
3700
+ */
3701
+ authority: TransactionSigner<TAccountAuthority>;
3702
+ satrushConfig: Address<TAccountSatrushConfig>;
3703
+ board: Address<TAccountBoard>;
3704
+ /** Round the automation deploys into. Must be the board's current round. */
3705
+ round: Address<TAccountRound>;
3706
+ /**
3707
+ * The automation being executed; its `authority` field keys the
3708
+ * deployment and miner PDAs below. A regular Account (boxed): its fields
3709
+ * feed seeds, which LazyAccount cannot do.
3710
+ */
3711
+ publicAutomation: Address<TAccountPublicAutomation>;
3712
+ usdMint: Address<TAccountUsdMint>;
3713
+ /** The automation's escrow the deploy is funded from. */
3714
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
3715
+ /** Board's USD deposit pool. */
3716
+ boardUsdAta: Address<TAccountBoardUsdAta>;
3717
+ /**
3718
+ * Per-(user, round) deployment record. Init fails if the user already
3719
+ * deployed into this round (manually or via this automation).
3720
+ */
3721
+ publicDeployment: Address<TAccountPublicDeployment>;
3722
+ /**
3723
+ * The user's miner profile; guaranteed to exist by
3724
+ * `create_public_automation`, so no `init_if_needed` here (stack + rent).
3725
+ */
3726
+ miner: Address<TAccountMiner>;
3727
+ epochVault: Address<TAccountEpochVault>;
3728
+ epochVaultUsdAta: Address<TAccountEpochVaultUsdAta>;
3729
+ oneBtcVault: Address<TAccountOneBtcVault>;
3730
+ oneBtcVaultUsdAta: Address<TAccountOneBtcVaultUsdAta>;
3731
+ /**
3732
+ * Same rationale as DeployPublic: discriminator + owner checks pin the
3733
+ * singleton; no seeds constraint needed.
3734
+ */
3735
+ treasury: Address<TAccountTreasury>;
3736
+ treasuryUsdAta: Address<TAccountTreasuryUsdAta>;
3737
+ /**
3738
+ * because the sysvar is too large to deserialize. Feeds Random-strategy
3739
+ * mask generation only, but is always passed (cheap).
3740
+ */
3741
+ slotHashes?: Address<TAccountSlotHashes>;
3742
+ tokenProgram?: Address<TAccountTokenProgram>;
3743
+ systemProgram?: Address<TAccountSystemProgram>;
3744
+ selectionMask: ExecutePublicAutomationInstructionDataArgs['selectionMask'];
3745
+ };
3746
+ declare function getExecutePublicAutomationInstruction<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountBoard extends string, TAccountRound extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAutomationUsdAta extends string, TAccountBoardUsdAta extends string, TAccountPublicDeployment extends string, TAccountMiner extends string, TAccountEpochVault extends string, TAccountEpochVaultUsdAta extends string, TAccountOneBtcVault extends string, TAccountOneBtcVaultUsdAta extends string, TAccountTreasury extends string, TAccountTreasuryUsdAta extends string, TAccountSlotHashes extends string, TAccountTokenProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: ExecutePublicAutomationInput<TAccountAuthority, TAccountSatrushConfig, TAccountBoard, TAccountRound, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountBoardUsdAta, TAccountPublicDeployment, TAccountMiner, TAccountEpochVault, TAccountEpochVaultUsdAta, TAccountOneBtcVault, TAccountOneBtcVaultUsdAta, TAccountTreasury, TAccountTreasuryUsdAta, TAccountSlotHashes, TAccountTokenProgram, TAccountSystemProgram>, config?: {
3747
+ programAddress?: TProgramAddress;
3748
+ }): ExecutePublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountBoard, TAccountRound, TAccountPublicAutomation, TAccountUsdMint, TAccountAutomationUsdAta, TAccountBoardUsdAta, TAccountPublicDeployment, TAccountMiner, TAccountEpochVault, TAccountEpochVaultUsdAta, TAccountOneBtcVault, TAccountOneBtcVaultUsdAta, TAccountTreasury, TAccountTreasuryUsdAta, TAccountSlotHashes, TAccountTokenProgram, TAccountSystemProgram>;
3749
+ type ParsedExecutePublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
3750
+ programAddress: Address<TProgram>;
3751
+ accounts: {
3752
+ /**
3753
+ * The crank (round authority); pays the deployment rent, recovered at
3754
+ * settle.
3755
+ */
3756
+ authority: TAccountMetas[0];
3757
+ satrushConfig: TAccountMetas[1];
3758
+ board: TAccountMetas[2];
3759
+ /** Round the automation deploys into. Must be the board's current round. */
3760
+ round: TAccountMetas[3];
3761
+ /**
3762
+ * The automation being executed; its `authority` field keys the
3763
+ * deployment and miner PDAs below. A regular Account (boxed): its fields
3764
+ * feed seeds, which LazyAccount cannot do.
3765
+ */
3766
+ publicAutomation: TAccountMetas[4];
3767
+ usdMint: TAccountMetas[5];
3768
+ /** The automation's escrow the deploy is funded from. */
3769
+ automationUsdAta: TAccountMetas[6];
3770
+ /** Board's USD deposit pool. */
3771
+ boardUsdAta: TAccountMetas[7];
3772
+ /**
3773
+ * Per-(user, round) deployment record. Init fails if the user already
3774
+ * deployed into this round (manually or via this automation).
3775
+ */
3776
+ publicDeployment: TAccountMetas[8];
3777
+ /**
3778
+ * The user's miner profile; guaranteed to exist by
3779
+ * `create_public_automation`, so no `init_if_needed` here (stack + rent).
3780
+ */
3781
+ miner: TAccountMetas[9];
3782
+ epochVault: TAccountMetas[10];
3783
+ epochVaultUsdAta: TAccountMetas[11];
3784
+ oneBtcVault: TAccountMetas[12];
3785
+ oneBtcVaultUsdAta: TAccountMetas[13];
3786
+ /**
3787
+ * Same rationale as DeployPublic: discriminator + owner checks pin the
3788
+ * singleton; no seeds constraint needed.
3789
+ */
3790
+ treasury: TAccountMetas[14];
3791
+ treasuryUsdAta: TAccountMetas[15];
3792
+ /**
3793
+ * because the sysvar is too large to deserialize. Feeds Random-strategy
3794
+ * mask generation only, but is always passed (cheap).
3795
+ */
3796
+ slotHashes: TAccountMetas[16];
3797
+ tokenProgram: TAccountMetas[17];
3798
+ systemProgram: TAccountMetas[18];
3799
+ };
3800
+ data: ExecutePublicAutomationInstructionData;
3801
+ };
3802
+ declare function parseExecutePublicAutomationInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedExecutePublicAutomationInstruction<TProgram, TAccountMetas>;
3803
+
3221
3804
  /**
3222
3805
  * This code was AUTOGENERATED using the Codama library.
3223
3806
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -3470,16 +4053,20 @@ declare function parseSelectEpochWinnerInstruction<TProgram extends string, TAcc
3470
4053
 
3471
4054
  declare const SETTLE_DEPLOY_PUBLIC_DISCRIMINATOR: ReadonlyUint8Array;
3472
4055
  declare function getSettleDeployPublicDiscriminatorBytes(): ReadonlyUint8Array;
3473
- type SettleDeployPublicInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSatrushConfig extends string | AccountMeta<string> = string, TAccountRound extends string | AccountMeta<string> = string, TAccountBoard extends string | AccountMeta<string> = string, TAccountPublicDeployment extends string | AccountMeta<string> = string, TAccountMiner extends string | AccountMeta<string> = string, TAccountSatsVault extends string | AccountMeta<string> = string, TAccountBtcMint extends string | AccountMeta<string> = string, TAccountUsdMint extends string | AccountMeta<string> = string, TAccountBoardBtcAta extends string | AccountMeta<string> = string, TAccountSatsVaultBtcAta extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TAccountAssociatedTokenProgram extends string | AccountMeta<string> = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL', TAccountSystemProgram extends string | AccountMeta<string> = '11111111111111111111111111111111', TAccountEventAuthority extends string | AccountMeta<string> = string, TAccountProgram extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
4056
+ type SettleDeployPublicInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSatrushConfig extends string | AccountMeta<string> = string, TAccountRound extends string | AccountMeta<string> = string, TAccountBoard extends string | AccountMeta<string> = string, TAccountRentRecipient extends string | AccountMeta<string> = string, TAccountPublicDeployment extends string | AccountMeta<string> = string, TAccountMiner extends string | AccountMeta<string> = string, TAccountPublicAutomation extends string | AccountMeta<string> = string, TAccountAutomationUsdAta extends string | AccountMeta<string> = string, TAccountSatsVault extends string | AccountMeta<string> = string, TAccountBtcMint extends string | AccountMeta<string> = string, TAccountUsdMint extends string | AccountMeta<string> = string, TAccountBoardUsdAta extends string | AccountMeta<string> = string, TAccountBoardBtcAta extends string | AccountMeta<string> = string, TAccountSatsVaultBtcAta extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TAccountAssociatedTokenProgram extends string | AccountMeta<string> = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL', TAccountSystemProgram extends string | AccountMeta<string> = '11111111111111111111111111111111', TAccountEventAuthority extends string | AccountMeta<string> = string, TAccountProgram extends string | AccountMeta<string> = string, TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
3474
4057
  TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority,
3475
4058
  TAccountSatrushConfig extends string ? ReadonlyAccount<TAccountSatrushConfig> : TAccountSatrushConfig,
3476
4059
  TAccountRound extends string ? WritableAccount<TAccountRound> : TAccountRound,
3477
4060
  TAccountBoard extends string ? ReadonlyAccount<TAccountBoard> : TAccountBoard,
4061
+ TAccountRentRecipient extends string ? WritableAccount<TAccountRentRecipient> : TAccountRentRecipient,
3478
4062
  TAccountPublicDeployment extends string ? WritableAccount<TAccountPublicDeployment> : TAccountPublicDeployment,
3479
4063
  TAccountMiner extends string ? WritableAccount<TAccountMiner> : TAccountMiner,
4064
+ TAccountPublicAutomation extends string ? WritableAccount<TAccountPublicAutomation> : TAccountPublicAutomation,
4065
+ TAccountAutomationUsdAta extends string ? WritableAccount<TAccountAutomationUsdAta> : TAccountAutomationUsdAta,
3480
4066
  TAccountSatsVault extends string ? WritableAccount<TAccountSatsVault> : TAccountSatsVault,
3481
4067
  TAccountBtcMint extends string ? ReadonlyAccount<TAccountBtcMint> : TAccountBtcMint,
3482
4068
  TAccountUsdMint extends string ? ReadonlyAccount<TAccountUsdMint> : TAccountUsdMint,
4069
+ TAccountBoardUsdAta extends string ? WritableAccount<TAccountBoardUsdAta> : TAccountBoardUsdAta,
3483
4070
  TAccountBoardBtcAta extends string ? WritableAccount<TAccountBoardBtcAta> : TAccountBoardBtcAta,
3484
4071
  TAccountSatsVaultBtcAta extends string ? WritableAccount<TAccountSatsVaultBtcAta> : TAccountSatsVaultBtcAta,
3485
4072
  TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram,
@@ -3496,7 +4083,11 @@ type SettleDeployPublicInstructionDataArgs = {};
3496
4083
  declare function getSettleDeployPublicInstructionDataEncoder(): FixedSizeEncoder<SettleDeployPublicInstructionDataArgs>;
3497
4084
  declare function getSettleDeployPublicInstructionDataDecoder(): FixedSizeDecoder<SettleDeployPublicInstructionData>;
3498
4085
  declare function getSettleDeployPublicInstructionDataCodec(): FixedSizeCodec<SettleDeployPublicInstructionDataArgs, SettleDeployPublicInstructionData>;
3499
- type SettleDeployPublicAsyncInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountRound extends string = string, TAccountBoard extends string = string, TAccountPublicDeployment extends string = string, TAccountMiner extends string = string, TAccountSatsVault extends string = string, TAccountBtcMint extends string = string, TAccountUsdMint extends string = string, TAccountBoardBtcAta extends string = string, TAccountSatsVaultBtcAta extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string, TAccountEventAuthority extends string = string, TAccountProgram extends string = string> = {
4086
+ type SettleDeployPublicAsyncInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountRound extends string = string, TAccountBoard extends string = string, TAccountRentRecipient extends string = string, TAccountPublicDeployment extends string = string, TAccountMiner extends string = string, TAccountPublicAutomation extends string = string, TAccountAutomationUsdAta extends string = string, TAccountSatsVault extends string = string, TAccountBtcMint extends string = string, TAccountUsdMint extends string = string, TAccountBoardUsdAta extends string = string, TAccountBoardBtcAta extends string = string, TAccountSatsVaultBtcAta extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string, TAccountEventAuthority extends string = string, TAccountProgram extends string = string> = {
4087
+ /**
4088
+ * Settler: the deployment's owner (manual claim) or the round authority
4089
+ * (crank settling automated deployments).
4090
+ */
3500
4091
  authority: TransactionSigner<TAccountAuthority>;
3501
4092
  satrushConfig?: Address<TAccountSatrushConfig>;
3502
4093
  /** Round the deployment belongs to. Must be fully settled. */
@@ -3504,20 +4095,38 @@ type SettleDeployPublicAsyncInput<TAccountAuthority extends string = string, TAc
3504
4095
  /** PDA that owns `board_btc_ata`; signs the deposit transfer into the vault. */
3505
4096
  board?: Address<TAccountBoard>;
3506
4097
  /**
3507
- * The caller's settled deployment being claimed. Closed on success so it can
3508
- * never be claimed twice; rent is returned to the owner.
4098
+ * independent of the signer: the crank for automated deployments (it paid
4099
+ * at execute), the user for manual ones.
4100
+ */
4101
+ rentRecipient: Address<TAccountRentRecipient>;
4102
+ /**
4103
+ * The settled deployment; PDA re-keyed off its stored authority so a
4104
+ * crank signer can settle it. Closed to `rent_recipient`.
3509
4105
  */
3510
4106
  publicDeployment: Address<TAccountPublicDeployment>;
4107
+ /** Miner profile of the deployment's owner (not the signer). */
4108
+ miner: Address<TAccountMiner>;
3511
4109
  /**
3512
- * Miner profile for `authority`. Created lazily on the first claim and
3513
- * loaded on subsequent ones.
4110
+ * address is derived, so a client cannot dodge reload routing by omitting
4111
+ * it); may be closed/empty, in which case winnings fall back to the miner
4112
+ * profile. Deserialized manually in the handler when live.
3514
4113
  */
3515
- miner?: Address<TAccountMiner>;
4114
+ publicAutomation: Address<TAccountPublicAutomation>;
4115
+ /**
4116
+ * reload branch only (owner must be the automation PDA, mint the USD
4117
+ * mint). May be closed/empty when the automation is gone.
4118
+ */
4119
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
3516
4120
  /** The Sats Vault the winner's BTC is deposited into for shares. */
3517
4121
  satsVault?: Address<TAccountSatsVault>;
3518
4122
  btcMint: Address<TAccountBtcMint>;
3519
4123
  /** USD mint — read only to size hashrate points by the stake's whole-USD unit. */
3520
4124
  usdMint: Address<TAccountUsdMint>;
4125
+ /**
4126
+ * Board's USD pool — the reload transfer source (winnings sit there until
4127
+ * claimed or reloaded).
4128
+ */
4129
+ boardUsdAta?: Address<TAccountBoardUsdAta>;
3521
4130
  /** Board's BTC reserves — the round's post-swap BTC, source of the deposit. */
3522
4131
  boardBtcAta?: Address<TAccountBoardBtcAta>;
3523
4132
  /** Vault's BTC reserves — the deposit destination. */
@@ -3528,10 +4137,14 @@ type SettleDeployPublicAsyncInput<TAccountAuthority extends string = string, TAc
3528
4137
  eventAuthority: Address<TAccountEventAuthority>;
3529
4138
  program: Address<TAccountProgram>;
3530
4139
  };
3531
- declare function getSettleDeployPublicInstructionAsync<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountRound extends string, TAccountBoard extends string, TAccountPublicDeployment extends string, TAccountMiner extends string, TAccountSatsVault extends string, TAccountBtcMint extends string, TAccountUsdMint extends string, TAccountBoardBtcAta extends string, TAccountSatsVaultBtcAta extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TAccountEventAuthority extends string, TAccountProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: SettleDeployPublicAsyncInput<TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountPublicDeployment, TAccountMiner, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>, config?: {
4140
+ declare function getSettleDeployPublicInstructionAsync<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountRound extends string, TAccountBoard extends string, TAccountRentRecipient extends string, TAccountPublicDeployment extends string, TAccountMiner extends string, TAccountPublicAutomation extends string, TAccountAutomationUsdAta extends string, TAccountSatsVault extends string, TAccountBtcMint extends string, TAccountUsdMint extends string, TAccountBoardUsdAta extends string, TAccountBoardBtcAta extends string, TAccountSatsVaultBtcAta extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TAccountEventAuthority extends string, TAccountProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: SettleDeployPublicAsyncInput<TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountRentRecipient, TAccountPublicDeployment, TAccountMiner, TAccountPublicAutomation, TAccountAutomationUsdAta, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardUsdAta, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>, config?: {
3532
4141
  programAddress?: TProgramAddress;
3533
- }): Promise<SettleDeployPublicInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountPublicDeployment, TAccountMiner, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>>;
3534
- type SettleDeployPublicInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountRound extends string = string, TAccountBoard extends string = string, TAccountPublicDeployment extends string = string, TAccountMiner extends string = string, TAccountSatsVault extends string = string, TAccountBtcMint extends string = string, TAccountUsdMint extends string = string, TAccountBoardBtcAta extends string = string, TAccountSatsVaultBtcAta extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string, TAccountEventAuthority extends string = string, TAccountProgram extends string = string> = {
4142
+ }): Promise<SettleDeployPublicInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountRentRecipient, TAccountPublicDeployment, TAccountMiner, TAccountPublicAutomation, TAccountAutomationUsdAta, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardUsdAta, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>>;
4143
+ type SettleDeployPublicInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountRound extends string = string, TAccountBoard extends string = string, TAccountRentRecipient extends string = string, TAccountPublicDeployment extends string = string, TAccountMiner extends string = string, TAccountPublicAutomation extends string = string, TAccountAutomationUsdAta extends string = string, TAccountSatsVault extends string = string, TAccountBtcMint extends string = string, TAccountUsdMint extends string = string, TAccountBoardUsdAta extends string = string, TAccountBoardBtcAta extends string = string, TAccountSatsVaultBtcAta extends string = string, TAccountTokenProgram extends string = string, TAccountAssociatedTokenProgram extends string = string, TAccountSystemProgram extends string = string, TAccountEventAuthority extends string = string, TAccountProgram extends string = string> = {
4144
+ /**
4145
+ * Settler: the deployment's owner (manual claim) or the round authority
4146
+ * (crank settling automated deployments).
4147
+ */
3535
4148
  authority: TransactionSigner<TAccountAuthority>;
3536
4149
  satrushConfig: Address<TAccountSatrushConfig>;
3537
4150
  /** Round the deployment belongs to. Must be fully settled. */
@@ -3539,20 +4152,38 @@ type SettleDeployPublicInput<TAccountAuthority extends string = string, TAccount
3539
4152
  /** PDA that owns `board_btc_ata`; signs the deposit transfer into the vault. */
3540
4153
  board: Address<TAccountBoard>;
3541
4154
  /**
3542
- * The caller's settled deployment being claimed. Closed on success so it can
3543
- * never be claimed twice; rent is returned to the owner.
4155
+ * independent of the signer: the crank for automated deployments (it paid
4156
+ * at execute), the user for manual ones.
3544
4157
  */
3545
- publicDeployment: Address<TAccountPublicDeployment>;
4158
+ rentRecipient: Address<TAccountRentRecipient>;
3546
4159
  /**
3547
- * Miner profile for `authority`. Created lazily on the first claim and
3548
- * loaded on subsequent ones.
4160
+ * The settled deployment; PDA re-keyed off its stored authority so a
4161
+ * crank signer can settle it. Closed to `rent_recipient`.
3549
4162
  */
4163
+ publicDeployment: Address<TAccountPublicDeployment>;
4164
+ /** Miner profile of the deployment's owner (not the signer). */
3550
4165
  miner: Address<TAccountMiner>;
4166
+ /**
4167
+ * address is derived, so a client cannot dodge reload routing by omitting
4168
+ * it); may be closed/empty, in which case winnings fall back to the miner
4169
+ * profile. Deserialized manually in the handler when live.
4170
+ */
4171
+ publicAutomation: Address<TAccountPublicAutomation>;
4172
+ /**
4173
+ * reload branch only (owner must be the automation PDA, mint the USD
4174
+ * mint). May be closed/empty when the automation is gone.
4175
+ */
4176
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
3551
4177
  /** The Sats Vault the winner's BTC is deposited into for shares. */
3552
4178
  satsVault: Address<TAccountSatsVault>;
3553
4179
  btcMint: Address<TAccountBtcMint>;
3554
4180
  /** USD mint — read only to size hashrate points by the stake's whole-USD unit. */
3555
4181
  usdMint: Address<TAccountUsdMint>;
4182
+ /**
4183
+ * Board's USD pool — the reload transfer source (winnings sit there until
4184
+ * claimed or reloaded).
4185
+ */
4186
+ boardUsdAta: Address<TAccountBoardUsdAta>;
3556
4187
  /** Board's BTC reserves — the round's post-swap BTC, source of the deposit. */
3557
4188
  boardBtcAta: Address<TAccountBoardBtcAta>;
3558
4189
  /** Vault's BTC reserves — the deposit destination. */
@@ -3563,12 +4194,16 @@ type SettleDeployPublicInput<TAccountAuthority extends string = string, TAccount
3563
4194
  eventAuthority: Address<TAccountEventAuthority>;
3564
4195
  program: Address<TAccountProgram>;
3565
4196
  };
3566
- declare function getSettleDeployPublicInstruction<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountRound extends string, TAccountBoard extends string, TAccountPublicDeployment extends string, TAccountMiner extends string, TAccountSatsVault extends string, TAccountBtcMint extends string, TAccountUsdMint extends string, TAccountBoardBtcAta extends string, TAccountSatsVaultBtcAta extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TAccountEventAuthority extends string, TAccountProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: SettleDeployPublicInput<TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountPublicDeployment, TAccountMiner, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>, config?: {
4197
+ declare function getSettleDeployPublicInstruction<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountRound extends string, TAccountBoard extends string, TAccountRentRecipient extends string, TAccountPublicDeployment extends string, TAccountMiner extends string, TAccountPublicAutomation extends string, TAccountAutomationUsdAta extends string, TAccountSatsVault extends string, TAccountBtcMint extends string, TAccountUsdMint extends string, TAccountBoardUsdAta extends string, TAccountBoardBtcAta extends string, TAccountSatsVaultBtcAta extends string, TAccountTokenProgram extends string, TAccountAssociatedTokenProgram extends string, TAccountSystemProgram extends string, TAccountEventAuthority extends string, TAccountProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: SettleDeployPublicInput<TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountRentRecipient, TAccountPublicDeployment, TAccountMiner, TAccountPublicAutomation, TAccountAutomationUsdAta, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardUsdAta, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>, config?: {
3567
4198
  programAddress?: TProgramAddress;
3568
- }): SettleDeployPublicInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountPublicDeployment, TAccountMiner, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>;
4199
+ }): SettleDeployPublicInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountRound, TAccountBoard, TAccountRentRecipient, TAccountPublicDeployment, TAccountMiner, TAccountPublicAutomation, TAccountAutomationUsdAta, TAccountSatsVault, TAccountBtcMint, TAccountUsdMint, TAccountBoardUsdAta, TAccountBoardBtcAta, TAccountSatsVaultBtcAta, TAccountTokenProgram, TAccountAssociatedTokenProgram, TAccountSystemProgram, TAccountEventAuthority, TAccountProgram>;
3569
4200
  type ParsedSettleDeployPublicInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
3570
4201
  programAddress: Address<TProgram>;
3571
4202
  accounts: {
4203
+ /**
4204
+ * Settler: the deployment's owner (manual claim) or the round authority
4205
+ * (crank settling automated deployments).
4206
+ */
3572
4207
  authority: TAccountMetas[0];
3573
4208
  satrushConfig: TAccountMetas[1];
3574
4209
  /** Round the deployment belongs to. Must be fully settled. */
@@ -3576,29 +4211,47 @@ type ParsedSettleDeployPublicInstruction<TProgram extends string = typeof SATRUS
3576
4211
  /** PDA that owns `board_btc_ata`; signs the deposit transfer into the vault. */
3577
4212
  board: TAccountMetas[3];
3578
4213
  /**
3579
- * The caller's settled deployment being claimed. Closed on success so it can
3580
- * never be claimed twice; rent is returned to the owner.
4214
+ * independent of the signer: the crank for automated deployments (it paid
4215
+ * at execute), the user for manual ones.
4216
+ */
4217
+ rentRecipient: TAccountMetas[4];
4218
+ /**
4219
+ * The settled deployment; PDA re-keyed off its stored authority so a
4220
+ * crank signer can settle it. Closed to `rent_recipient`.
3581
4221
  */
3582
- publicDeployment: TAccountMetas[4];
4222
+ publicDeployment: TAccountMetas[5];
4223
+ /** Miner profile of the deployment's owner (not the signer). */
4224
+ miner: TAccountMetas[6];
3583
4225
  /**
3584
- * Miner profile for `authority`. Created lazily on the first claim and
3585
- * loaded on subsequent ones.
4226
+ * address is derived, so a client cannot dodge reload routing by omitting
4227
+ * it); may be closed/empty, in which case winnings fall back to the miner
4228
+ * profile. Deserialized manually in the handler when live.
3586
4229
  */
3587
- miner: TAccountMetas[5];
4230
+ publicAutomation: TAccountMetas[7];
4231
+ /**
4232
+ * reload branch only (owner must be the automation PDA, mint the USD
4233
+ * mint). May be closed/empty when the automation is gone.
4234
+ */
4235
+ automationUsdAta: TAccountMetas[8];
3588
4236
  /** The Sats Vault the winner's BTC is deposited into for shares. */
3589
- satsVault: TAccountMetas[6];
3590
- btcMint: TAccountMetas[7];
4237
+ satsVault: TAccountMetas[9];
4238
+ btcMint: TAccountMetas[10];
3591
4239
  /** USD mint — read only to size hashrate points by the stake's whole-USD unit. */
3592
- usdMint: TAccountMetas[8];
4240
+ usdMint: TAccountMetas[11];
4241
+ /**
4242
+ * Board's USD pool — the reload transfer source (winnings sit there until
4243
+ * claimed or reloaded).
4244
+ */
4245
+ boardUsdAta: TAccountMetas[12];
3593
4246
  /** Board's BTC reserves — the round's post-swap BTC, source of the deposit. */
3594
- boardBtcAta: TAccountMetas[9];
4247
+ boardBtcAta: TAccountMetas[13];
3595
4248
  /** Vault's BTC reserves — the deposit destination. */
3596
- satsVaultBtcAta: TAccountMetas[10];
3597
- tokenProgram: TAccountMetas[11];
3598
- associatedTokenProgram: TAccountMetas[12];
3599
- systemProgram: TAccountMetas[13];
3600
- eventAuthority: TAccountMetas[14];
3601
- program: TAccountMetas[15];
4249
+ satsVaultBtcAta: TAccountMetas[14];
4250
+ tokenProgram: TAccountMetas[15];
4251
+ associatedTokenProgram: TAccountMetas[16];
4252
+ systemProgram: TAccountMetas[17];
4253
+ eventAuthority: TAccountMetas[18];
4254
+ program: TAccountMetas[19];
3602
4255
  };
3603
4256
  data: SettleDeployPublicInstructionData;
3604
4257
  };
@@ -3999,6 +4652,77 @@ type ParsedSwapStrikeStakeInstruction<TProgram extends string = typeof SATRUSH_P
3999
4652
  };
4000
4653
  declare function parseSwapStrikeStakeInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedSwapStrikeStakeInstruction<TProgram, TAccountMetas>;
4001
4654
 
4655
+ /**
4656
+ * This code was AUTOGENERATED using the Codama library.
4657
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4658
+ * to add features, then rerun Codama to update it.
4659
+ *
4660
+ * @see https://github.com/codama-idl/codama
4661
+ */
4662
+
4663
+ declare const TOP_UP_PUBLIC_AUTOMATION_DISCRIMINATOR: ReadonlyUint8Array;
4664
+ declare function getTopUpPublicAutomationDiscriminatorBytes(): ReadonlyUint8Array;
4665
+ type TopUpPublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountAuthority extends string | AccountMeta<string> = string, TAccountSatrushConfig extends string | AccountMeta<string> = string, TAccountPublicAutomation extends string | AccountMeta<string> = string, TAccountUsdMint extends string | AccountMeta<string> = string, TAccountAuthorityUsdAta extends string | AccountMeta<string> = string, TAccountAutomationUsdAta extends string | AccountMeta<string> = string, TAccountTokenProgram extends string | AccountMeta<string> = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
4666
+ TAccountAuthority extends string ? WritableSignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority,
4667
+ TAccountSatrushConfig extends string ? ReadonlyAccount<TAccountSatrushConfig> : TAccountSatrushConfig,
4668
+ TAccountPublicAutomation extends string ? WritableAccount<TAccountPublicAutomation> : TAccountPublicAutomation,
4669
+ TAccountUsdMint extends string ? ReadonlyAccount<TAccountUsdMint> : TAccountUsdMint,
4670
+ TAccountAuthorityUsdAta extends string ? WritableAccount<TAccountAuthorityUsdAta> : TAccountAuthorityUsdAta,
4671
+ TAccountAutomationUsdAta extends string ? WritableAccount<TAccountAutomationUsdAta> : TAccountAutomationUsdAta,
4672
+ TAccountTokenProgram extends string ? ReadonlyAccount<TAccountTokenProgram> : TAccountTokenProgram,
4673
+ ...TRemainingAccounts
4674
+ ]>;
4675
+ type TopUpPublicAutomationInstructionData = {
4676
+ discriminator: ReadonlyUint8Array;
4677
+ amount: bigint;
4678
+ };
4679
+ type TopUpPublicAutomationInstructionDataArgs = {
4680
+ amount: number | bigint;
4681
+ };
4682
+ declare function getTopUpPublicAutomationInstructionDataEncoder(): FixedSizeEncoder<TopUpPublicAutomationInstructionDataArgs>;
4683
+ declare function getTopUpPublicAutomationInstructionDataDecoder(): FixedSizeDecoder<TopUpPublicAutomationInstructionData>;
4684
+ declare function getTopUpPublicAutomationInstructionDataCodec(): FixedSizeCodec<TopUpPublicAutomationInstructionDataArgs, TopUpPublicAutomationInstructionData>;
4685
+ type TopUpPublicAutomationAsyncInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAuthorityUsdAta extends string = string, TAccountAutomationUsdAta extends string = string, TAccountTokenProgram extends string = string> = {
4686
+ authority: TransactionSigner<TAccountAuthority>;
4687
+ satrushConfig?: Address<TAccountSatrushConfig>;
4688
+ publicAutomation?: Address<TAccountPublicAutomation>;
4689
+ usdMint: Address<TAccountUsdMint>;
4690
+ authorityUsdAta: Address<TAccountAuthorityUsdAta>;
4691
+ automationUsdAta?: Address<TAccountAutomationUsdAta>;
4692
+ tokenProgram?: Address<TAccountTokenProgram>;
4693
+ amount: TopUpPublicAutomationInstructionDataArgs['amount'];
4694
+ };
4695
+ declare function getTopUpPublicAutomationInstructionAsync<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAuthorityUsdAta extends string, TAccountAutomationUsdAta extends string, TAccountTokenProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: TopUpPublicAutomationAsyncInput<TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountTokenProgram>, config?: {
4696
+ programAddress?: TProgramAddress;
4697
+ }): Promise<TopUpPublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountTokenProgram>>;
4698
+ type TopUpPublicAutomationInput<TAccountAuthority extends string = string, TAccountSatrushConfig extends string = string, TAccountPublicAutomation extends string = string, TAccountUsdMint extends string = string, TAccountAuthorityUsdAta extends string = string, TAccountAutomationUsdAta extends string = string, TAccountTokenProgram extends string = string> = {
4699
+ authority: TransactionSigner<TAccountAuthority>;
4700
+ satrushConfig: Address<TAccountSatrushConfig>;
4701
+ publicAutomation: Address<TAccountPublicAutomation>;
4702
+ usdMint: Address<TAccountUsdMint>;
4703
+ authorityUsdAta: Address<TAccountAuthorityUsdAta>;
4704
+ automationUsdAta: Address<TAccountAutomationUsdAta>;
4705
+ tokenProgram?: Address<TAccountTokenProgram>;
4706
+ amount: TopUpPublicAutomationInstructionDataArgs['amount'];
4707
+ };
4708
+ declare function getTopUpPublicAutomationInstruction<TAccountAuthority extends string, TAccountSatrushConfig extends string, TAccountPublicAutomation extends string, TAccountUsdMint extends string, TAccountAuthorityUsdAta extends string, TAccountAutomationUsdAta extends string, TAccountTokenProgram extends string, TProgramAddress extends Address = typeof SATRUSH_PROGRAM_ADDRESS>(input: TopUpPublicAutomationInput<TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountTokenProgram>, config?: {
4709
+ programAddress?: TProgramAddress;
4710
+ }): TopUpPublicAutomationInstruction<TProgramAddress, TAccountAuthority, TAccountSatrushConfig, TAccountPublicAutomation, TAccountUsdMint, TAccountAuthorityUsdAta, TAccountAutomationUsdAta, TAccountTokenProgram>;
4711
+ type ParsedTopUpPublicAutomationInstruction<TProgram extends string = typeof SATRUSH_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
4712
+ programAddress: Address<TProgram>;
4713
+ accounts: {
4714
+ authority: TAccountMetas[0];
4715
+ satrushConfig: TAccountMetas[1];
4716
+ publicAutomation: TAccountMetas[2];
4717
+ usdMint: TAccountMetas[3];
4718
+ authorityUsdAta: TAccountMetas[4];
4719
+ automationUsdAta: TAccountMetas[5];
4720
+ tokenProgram: TAccountMetas[6];
4721
+ };
4722
+ data: TopUpPublicAutomationInstructionData;
4723
+ };
4724
+ declare function parseTopUpPublicAutomationInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedTopUpPublicAutomationInstruction<TProgram, TAccountMetas>;
4725
+
4002
4726
  /**
4003
4727
  * This code was AUTOGENERATED using the Codama library.
4004
4728
  * Please DO NOT EDIT THIS FILE, instead use visitors
@@ -4329,13 +5053,13 @@ declare function parseWithdrawProtocolFeesInstruction<TProgram extends string, T
4329
5053
  */
4330
5054
  declare function buildDeployPublicInstruction(authority: Address, usdMint: Address, roundId: number, selectionMask: number, amount: number | bigint): Promise<Instruction>;
4331
5055
  /**
4332
- * `settle_deploy_public`: settle the miner `authority`'s deployment in a
4333
- * Settled round credit winnings (USD + sats vault shares) and hashrate
4334
- * points to the miner profile, then close the deployment account, returning
4335
- * its rent. Valid for losing deployments too (they still earn hashrate
4336
- * points).
5056
+ * `settle_deploy_public`: settle `deploymentAuthority`'s deployment in a
5057
+ * Settled round. `authority` signs the deployment owner, or the round
5058
+ * authority when settling automation-created deployments. `rentRecipient`
5059
+ * must be the round authority for automated deployments (it fronted the
5060
+ * deployment rent at execute) and the deployment owner for manual ones.
4337
5061
  */
4338
- declare function buildSettleDeployPublicInstruction(authority: Address, usdMint: Address, btcMint: Address, roundId: number): Promise<Instruction>;
5062
+ declare function buildSettleDeployPublicInstruction(authority: Address, deploymentAuthority: Address, rentRecipient: Address, usdMint: Address, btcMint: Address, roundId: number): Promise<Instruction>;
4339
5063
  /**
4340
5064
  * `claim_sats`: redeem `shares` of the miner `authority`'s sats vault shares
4341
5065
  * for BTC. A claim fee is withheld in the vault; the net BTC transfers to the
@@ -4348,6 +5072,37 @@ declare function buildClaimSatsInstruction(authority: Address, btcMint: Address,
4348
5072
  * fee — the full amount transfers.
4349
5073
  */
4350
5074
  declare function buildClaimUsdInstruction(authority: Address, usdMint: Address, amount: number | bigint): Promise<Instruction>;
5075
+ /**
5076
+ * `create_public_automation`: escrow `depositUsdAmount` and configure the crank
5077
+ * to deploy `perRoundUsdAmount` per round on `authority`'s behalf. One
5078
+ * automation per authority.
5079
+ *
5080
+ * `selectionMask` must be a non-empty 21-bit mask for `Static` (used every
5081
+ * round) and `Random` (its tile count seeds each generated mask), and exactly
5082
+ * `0` for `Discretionary`, where the crank supplies a mask per round.
5083
+ */
5084
+ declare function buildCreatePublicAutomationInstruction(authority: Address, usdMint: Address, strategy: AutomationStrategyArgs, selectionMask: number, perRoundUsdAmount: number | bigint, reload: boolean, depositUsdAmount: number | bigint): Promise<Instruction>;
5085
+ /**
5086
+ * `top_up_public_automation`: move `amount` USD from `authority`'s account into
5087
+ * their automation's escrow, extending how many rounds it can play.
5088
+ */
5089
+ declare function buildTopUpPublicAutomationInstruction(authority: Address, usdMint: Address, amount: number | bigint): Promise<Instruction>;
5090
+ /**
5091
+ * `cancel_public_automation`: refund the escrow's full balance to `authority`
5092
+ * and close the automation. Unconditional — deployments already in flight
5093
+ * settle later into the miner profile instead of reloading.
5094
+ */
5095
+ declare function buildCancelPublicAutomationInstruction(authority: Address, usdMint: Address): Promise<Instruction>;
5096
+ /**
5097
+ * `execute_public_automation`: the crank's per-round deploy for
5098
+ * `automationAuthority`, funded from their escrow. Signed by the config's round
5099
+ * authority, which also pays the deployment's rent and recovers it at settle.
5100
+ *
5101
+ * `selectionMask` must be supplied for a `Discretionary` automation and omitted
5102
+ * (`null`) otherwise — `Static` reuses the stored mask and `Random` generates
5103
+ * one on-chain.
5104
+ */
5105
+ declare function buildExecutePublicAutomationInstruction(crankAuthority: Address, automationAuthority: Address, usdMint: Address, roundId: number, selectionMask: number | null): Promise<Instruction>;
4351
5106
 
4352
5107
  declare function getSatrushConfigAddress(): Promise<ProgramDerivedAddress>;
4353
5108
  /**
@@ -4367,6 +5122,31 @@ declare function getEpochVaultPageAddress(iterationId: number, pageIndex: number
4367
5122
  declare function getOneBtcVaultAddress(): Promise<ProgramDerivedAddress>;
4368
5123
  declare function getOneBtcVaultIterationAddress(iterationId: number): Promise<ProgramDerivedAddress>;
4369
5124
  declare function getTreasuryAddress(): Promise<ProgramDerivedAddress>;
5125
+ declare function getPublicAutomationAddress(authority: Address): Promise<ProgramDerivedAddress>;
5126
+
5127
+ /** BTC value of a sats-vault share amount, as computed by {@link satsToBtc}. */
5128
+ type BtcSharesValue = {
5129
+ /** Value at the current exchange rate, before the claim fee. */
5130
+ gross: bigint;
5131
+ /** Fee withheld on claim; the payout is `gross - fee`. */
5132
+ fee: bigint;
5133
+ };
5134
+ /**
5135
+ * BTC value of `shares` against a vault holding `vaultAmount` BTC with
5136
+ * `vaultShares` shares issued (`SatsVault.btcAmount` / `SatsVault.btcShares`).
5137
+ * `claimFeeBps` is `SatrushConfig.satsVaultClaimFeeBps`; pass `0` when only
5138
+ * the gross value matters. Zero `shares` value to zero without error;
5139
+ * `shares` exceeding `vaultShares` throws.
5140
+ */
5141
+ declare function satsToBtc(shares: bigint, vaultAmount: bigint, vaultShares: bigint, claimFeeBps: number): BtcSharesValue;
5142
+ /**
5143
+ * Shares minted for depositing `btcAmount` BTC into a vault holding
5144
+ * `vaultAmount` BTC with `vaultShares` shares issued (`SatsVault.btcAmount` /
5145
+ * `SatsVault.btcShares`): 1:1 while no shares exist, otherwise scaled by the
5146
+ * vault's `shares / assets` ratio and floored. Throws when the vault has
5147
+ * shares but no BTC, or the result exceeds `u64::MAX`.
5148
+ */
5149
+ declare function btcToSats(btcAmount: bigint, vaultAmount: bigint, vaultShares: bigint): bigint;
4370
5150
 
4371
5151
  /** Number of selectable tiles on the board. */
4372
5152
  declare const TILE_COUNT = 21;
@@ -4385,4 +5165,4 @@ declare function selectionMaskFromTiles(tiles: boolean[]): number;
4385
5165
  */
4386
5166
  declare function tilesFromSelectionMask(mask: number): boolean[];
4387
5167
 
4388
- export { BOARD_DISCRIMINATOR, BUY_EPOCH_TICKETS_DISCRIMINATOR, BUY_ONE_BTC_TICKETS_DISCRIMINATOR, type Board, type BoardArgs, type BuyEpochTicketsAsyncInput, type BuyEpochTicketsInput, type BuyEpochTicketsInstruction, type BuyEpochTicketsInstructionData, type BuyEpochTicketsInstructionDataArgs, type BuyOneBtcTicketsAsyncInput, type BuyOneBtcTicketsInput, type BuyOneBtcTicketsInstruction, type BuyOneBtcTicketsInstructionData, type BuyOneBtcTicketsInstructionDataArgs, CLAIM_EPOCH_REWARD_DISCRIMINATOR, CLAIM_ONE_BTC_REWARD_DISCRIMINATOR, CLAIM_SATS_DISCRIMINATOR, CLAIM_USD_DISCRIMINATOR, CLOSE_EPOCH_ENTRY_DISCRIMINATOR, CLOSE_EPOCH_ITERATION_DISCRIMINATOR, CLOSE_EPOCH_PAGE_DISCRIMINATOR, CLOSE_ONE_BTC_ITERATION_DISCRIMINATOR, CLOSE_ONE_BTC_TICKET_DISCRIMINATOR, CREATE_BOARD_DISCRIMINATOR, CREATE_EPOCH_VAULT_DISCRIMINATOR, CREATE_ONE_BTC_VAULT_DISCRIMINATOR, CREATE_SATRUSH_CONFIG_DISCRIMINATOR, CREATE_SATS_VAULT_DISCRIMINATOR, CREATE_TREASURY_DISCRIMINATOR, type ClaimEpochRewardAsyncInput, type ClaimEpochRewardInput, type ClaimEpochRewardInstruction, type ClaimEpochRewardInstructionData, type ClaimEpochRewardInstructionDataArgs, type ClaimOneBtcRewardAsyncInput, type ClaimOneBtcRewardInput, type ClaimOneBtcRewardInstruction, type ClaimOneBtcRewardInstructionData, type ClaimOneBtcRewardInstructionDataArgs, type ClaimSatsAsyncInput, type ClaimSatsInput, type ClaimSatsInstruction, type ClaimSatsInstructionData, type ClaimSatsInstructionDataArgs, type ClaimUsdAsyncInput, type ClaimUsdInput, type ClaimUsdInstruction, type ClaimUsdInstructionData, type ClaimUsdInstructionDataArgs, type CloseEpochEntryAsyncInput, type CloseEpochEntryInput, type CloseEpochEntryInstruction, type CloseEpochEntryInstructionData, type CloseEpochEntryInstructionDataArgs, type CloseEpochIterationAsyncInput, type CloseEpochIterationInput, type CloseEpochIterationInstruction, type CloseEpochIterationInstructionData, type CloseEpochIterationInstructionDataArgs, type CloseEpochPageAsyncInput, type CloseEpochPageInput, type CloseEpochPageInstruction, type CloseEpochPageInstructionData, type CloseEpochPageInstructionDataArgs, type CloseOneBtcIterationAsyncInput, type CloseOneBtcIterationInput, type CloseOneBtcIterationInstruction, type CloseOneBtcIterationInstructionData, type CloseOneBtcIterationInstructionDataArgs, type CloseOneBtcTicketInput, type CloseOneBtcTicketInstruction, type CloseOneBtcTicketInstructionData, type CloseOneBtcTicketInstructionDataArgs, type CreateBoardAsyncInput, type CreateBoardInput, type CreateBoardInstruction, type CreateBoardInstructionData, type CreateBoardInstructionDataArgs, type CreateEpochVaultAsyncInput, type CreateEpochVaultInput, type CreateEpochVaultInstruction, type CreateEpochVaultInstructionData, type CreateEpochVaultInstructionDataArgs, type CreateOneBtcVaultAsyncInput, type CreateOneBtcVaultInput, type CreateOneBtcVaultInstruction, type CreateOneBtcVaultInstructionData, type CreateOneBtcVaultInstructionDataArgs, type CreateSatrushConfigAsyncInput, type CreateSatrushConfigInput, type CreateSatrushConfigInstruction, type CreateSatrushConfigInstructionData, type CreateSatrushConfigInstructionDataArgs, type CreateSatsVaultAsyncInput, type CreateSatsVaultInput, type CreateSatsVaultInstruction, type CreateSatsVaultInstructionData, type CreateSatsVaultInstructionDataArgs, type CreateTreasuryAsyncInput, type CreateTreasuryInput, type CreateTreasuryInstruction, type CreateTreasuryInstructionData, type CreateTreasuryInstructionDataArgs, DEPLOY_PUBLIC_DISCRIMINATOR, type DeployPublicAsyncInput, type DeployPublicInput, type DeployPublicInstruction, type DeployPublicInstructionData, type DeployPublicInstructionDataArgs, EPOCH_VAULT_DISCRIMINATOR, EPOCH_VAULT_ENTRY_DISCRIMINATOR, EPOCH_VAULT_ITERATION_DISCRIMINATOR, EPOCH_VAULT_PAGE_DISCRIMINATOR, type EpochDrawTriggered, type EpochDrawTriggeredArgs, EpochState, type EpochStateArgs, type EpochTicketsBought, type EpochTicketsBoughtArgs, type EpochVault, type EpochVaultArgs, type EpochVaultEntry, type EpochVaultEntryArgs, type EpochVaultIteration, type EpochVaultIterationArgs, type EpochVaultPage, type EpochVaultPageArgs, type EpochWinnerSelected, type EpochWinnerSelectedArgs, MINER_DISCRIMINATOR, type Miner, type MinerArgs, type MinerSeeds, type NextRoundSeeds, ONE_BTC_VAULT_DISCRIMINATOR, ONE_BTC_VAULT_ENTRY_DISCRIMINATOR, ONE_BTC_VAULT_ITERATION_DISCRIMINATOR, type OneBtcDrawTriggered, type OneBtcDrawTriggeredArgs, OneBtcState, type OneBtcStateArgs, type OneBtcTicketsBought, type OneBtcTicketsBoughtArgs, type OneBtcVault, type OneBtcVaultArgs, type OneBtcVaultEntry, type OneBtcVaultEntryArgs, type OneBtcVaultIteration, type OneBtcVaultIterationArgs, PUBLIC_DEPLOYMENT_DISCRIMINATOR, type PageEntry, type PageEntryArgs, type ParsedBuyEpochTicketsInstruction, type ParsedBuyOneBtcTicketsInstruction, type ParsedClaimEpochRewardInstruction, type ParsedClaimOneBtcRewardInstruction, type ParsedClaimSatsInstruction, type ParsedClaimUsdInstruction, type ParsedCloseEpochEntryInstruction, type ParsedCloseEpochIterationInstruction, type ParsedCloseEpochPageInstruction, type ParsedCloseOneBtcIterationInstruction, type ParsedCloseOneBtcTicketInstruction, type ParsedCreateBoardInstruction, type ParsedCreateEpochVaultInstruction, type ParsedCreateOneBtcVaultInstruction, type ParsedCreateSatrushConfigInstruction, type ParsedCreateSatsVaultInstruction, type ParsedCreateTreasuryInstruction, type ParsedDeployPublicInstruction, type ParsedRotateRoundInstruction, type ParsedSatrushInstruction, type ParsedSealEpochPageInstruction, type ParsedSelectEpochWinnerInstruction, type ParsedSettleDeployPublicInstruction, type ParsedSwapEpochStakeInstruction, type ParsedSwapOneBtcStakeInstruction, type ParsedSwapRoundStakeInstruction, type ParsedSwapStrikeStakeInstruction, type ParsedTriggerEpochDrawInstruction, type ParsedTriggerOneBtcDrawInstruction, type ParsedUpdateBoardRoundDurationInstruction, type ParsedWithdrawProtocolFeesInstruction, type PublicDeploySettled, type PublicDeploySettledArgs, type PublicDeployment, type PublicDeploymentArgs, ROTATE_ROUND_DISCRIMINATOR, ROUND_DISCRIMINATOR, type RotateRoundAsyncInput, type RotateRoundInput, type RotateRoundInstruction, type RotateRoundInstructionData, type RotateRoundInstructionDataArgs, type Round, type RoundArgs, type RoundRevealed, type RoundRevealedArgs, type RoundStakeSwapped, type RoundStakeSwappedArgs, RoundState, type RoundStateArgs, SATRUSH_CONFIG_DISCRIMINATOR, SATRUSH_ERROR__ALREADY_REVEALED, SATRUSH_ERROR__ALREADY_SETTLED, SATRUSH_ERROR__ALREADY_SWAPPED, SATRUSH_ERROR__BOARD_ALREADY_BOOTSTRAPPED, SATRUSH_ERROR__DEPLOYMENT_NOT_SETTLED, SATRUSH_ERROR__EPOCH_ALREADY_CLAIMED, SATRUSH_ERROR__EPOCH_BELOW_MIN_HASHRATE, SATRUSH_ERROR__EPOCH_BELOW_THRESHOLD, SATRUSH_ERROR__EPOCH_INVALID_PAGE, SATRUSH_ERROR__EPOCH_MAX_PARTICIPANTS, SATRUSH_ERROR__EPOCH_NOT_A_WINNER, SATRUSH_ERROR__EPOCH_NOT_OPEN, SATRUSH_ERROR__EPOCH_NOT_SETTLED, SATRUSH_ERROR__EPOCH_NOT_SETTLING, SATRUSH_ERROR__EPOCH_PAGE_ALREADY_SEALED, SATRUSH_ERROR__EPOCH_PAGE_NOT_SEALED, SATRUSH_ERROR__EPOCH_SEAL_MISMATCH, SATRUSH_ERROR__EPOCH_WINDOW_NOT_ELAPSED, SATRUSH_ERROR__INSUFFICIENT_HASHRATE, SATRUSH_ERROR__INSUFFICIENT_SHARES, SATRUSH_ERROR__INSUFFICIENT_UNCLAIMED_USD, SATRUSH_ERROR__INVALID_CLAIM_AMOUNT, SATRUSH_ERROR__INVALID_DEPLOYMENT_AMOUNT, SATRUSH_ERROR__INVALID_ENTROPY, SATRUSH_ERROR__INVALID_JUPITER_ROUTE, SATRUSH_ERROR__INVALID_ROUND_DURATION, SATRUSH_ERROR__INVALID_ROUND_ID, SATRUSH_ERROR__INVALID_SELECTION_MASK, SATRUSH_ERROR__INVALID_SHARE_AMOUNT, SATRUSH_ERROR__INVALID_SLOT_HASH, SATRUSH_ERROR__INVALID_SWAP_PROGRAM, SATRUSH_ERROR__MATH_OVERFLOW, SATRUSH_ERROR__MATH_UNDERFLOW, SATRUSH_ERROR__ONE_BTC_BELOW_MIN_HASHRATE, SATRUSH_ERROR__ONE_BTC_BELOW_THRESHOLD, SATRUSH_ERROR__ONE_BTC_NOT_A_WINNER, SATRUSH_ERROR__ONE_BTC_NOT_OPEN, SATRUSH_ERROR__ONE_BTC_NOT_SETTLED, SATRUSH_ERROR__ONE_BTC_NOT_TRIGGERABLE, SATRUSH_ERROR__ONE_BTC_NO_PARTICIPANTS, SATRUSH_ERROR__ONE_BTC_WINNING_TICKET_LOCKED, SATRUSH_ERROR__ROUND_IN_PROGRESS, SATRUSH_ERROR__ROUND_NOT_ACTIVE, SATRUSH_ERROR__ROUND_NOT_REVEALED, SATRUSH_ERROR__ROUND_NOT_SETTLED, SATRUSH_ERROR__ROUND_WINDOW_CLOSED, SATRUSH_ERROR__SLIPPAGE_EXCEEDED, SATRUSH_ERROR__STRIKE_ALREADY_TRIGGERED, SATRUSH_ERROR__STRIKE_BELOW_THRESHOLD, SATRUSH_ERROR__SWAP_OVERSPENT, SATRUSH_ERROR__TREASURY_EMPTY, SATRUSH_ERROR__UNAUTHORIZED, SATRUSH_PROGRAM_ADDRESS, SATS_VAULT_DISCRIMINATOR, SEAL_EPOCH_PAGE_DISCRIMINATOR, SELECT_EPOCH_WINNER_DISCRIMINATOR, SETTLE_DEPLOY_PUBLIC_DISCRIMINATOR, SWAP_EPOCH_STAKE_DISCRIMINATOR, SWAP_ONE_BTC_STAKE_DISCRIMINATOR, SWAP_ROUND_STAKE_DISCRIMINATOR, SWAP_STRIKE_STAKE_DISCRIMINATOR, SatrushAccount, type SatrushConfig, type SatrushConfigArgs, type SatrushError, SatrushInstruction, type SatrushPlugin, type SatrushPluginAccounts, type SatrushPluginInstructions, type SatrushPluginPdas, type SatrushPluginRequirements, type SatsVault, type SatsVaultArgs, type SealEpochPageAsyncInput, type SealEpochPageInput, type SealEpochPageInstruction, type SealEpochPageInstructionData, type SealEpochPageInstructionDataArgs, type SelectEpochWinnerAsyncInput, type SelectEpochWinnerInput, type SelectEpochWinnerInstruction, type SelectEpochWinnerInstructionData, type SelectEpochWinnerInstructionDataArgs, type SettleDeployPublicAsyncInput, type SettleDeployPublicInput, type SettleDeployPublicInstruction, type SettleDeployPublicInstructionData, type SettleDeployPublicInstructionDataArgs, type SwapEpochStakeAsyncInput, type SwapEpochStakeInput, type SwapEpochStakeInstruction, type SwapEpochStakeInstructionData, type SwapEpochStakeInstructionDataArgs, type SwapOneBtcStakeAsyncInput, type SwapOneBtcStakeInput, type SwapOneBtcStakeInstruction, type SwapOneBtcStakeInstructionData, type SwapOneBtcStakeInstructionDataArgs, type SwapRoundStakeAsyncInput, type SwapRoundStakeInput, type SwapRoundStakeInstruction, type SwapRoundStakeInstructionData, type SwapRoundStakeInstructionDataArgs, type SwapStrikeStakeAsyncInput, type SwapStrikeStakeInput, type SwapStrikeStakeInstruction, type SwapStrikeStakeInstructionData, type SwapStrikeStakeInstructionDataArgs, TILE_COUNT, TREASURY_DISCRIMINATOR, TRIGGER_EPOCH_DRAW_DISCRIMINATOR, TRIGGER_ONE_BTC_DRAW_DISCRIMINATOR, type TileStake, type TileStakeArgs, type Treasury, type TreasuryArgs, type TriggerEpochDrawAsyncInput, type TriggerEpochDrawInput, type TriggerEpochDrawInstruction, type TriggerEpochDrawInstructionData, type TriggerEpochDrawInstructionDataArgs, type TriggerOneBtcDrawAsyncInput, type TriggerOneBtcDrawInput, type TriggerOneBtcDrawInstruction, type TriggerOneBtcDrawInstructionData, type TriggerOneBtcDrawInstructionDataArgs, UPDATE_BOARD_ROUND_DURATION_DISCRIMINATOR, type UpdateBoardRoundDurationAsyncInput, type UpdateBoardRoundDurationInput, type UpdateBoardRoundDurationInstruction, type UpdateBoardRoundDurationInstructionData, type UpdateBoardRoundDurationInstructionDataArgs, WITHDRAW_PROTOCOL_FEES_DISCRIMINATOR, type Winner, type WinnerArgs, type WithdrawProtocolFeesAsyncInput, type WithdrawProtocolFeesInput, type WithdrawProtocolFeesInstruction, type WithdrawProtocolFeesInstructionData, type WithdrawProtocolFeesInstructionDataArgs, buildClaimSatsInstruction, buildClaimUsdInstruction, buildDeployPublicInstruction, buildSettleDeployPublicInstruction, decodeBoard, decodeEpochVault, decodeEpochVaultEntry, decodeEpochVaultIteration, decodeEpochVaultPage, decodeMiner, decodeOneBtcVault, decodeOneBtcVaultEntry, decodeOneBtcVaultIteration, decodePublicDeployment, decodeRound, decodeSatrushConfig, decodeSatsVault, decodeTreasury, fetchAllBoard, fetchAllEpochVault, fetchAllEpochVaultEntry, fetchAllEpochVaultIteration, fetchAllEpochVaultPage, fetchAllMaybeBoard, fetchAllMaybeEpochVault, fetchAllMaybeEpochVaultEntry, fetchAllMaybeEpochVaultIteration, fetchAllMaybeEpochVaultPage, fetchAllMaybeMiner, fetchAllMaybeOneBtcVault, fetchAllMaybeOneBtcVaultEntry, fetchAllMaybeOneBtcVaultIteration, fetchAllMaybePublicDeployment, fetchAllMaybeRound, fetchAllMaybeSatrushConfig, fetchAllMaybeSatsVault, fetchAllMaybeTreasury, fetchAllMiner, fetchAllOneBtcVault, fetchAllOneBtcVaultEntry, fetchAllOneBtcVaultIteration, fetchAllPublicDeployment, fetchAllRound, fetchAllSatrushConfig, fetchAllSatsVault, fetchAllTreasury, fetchBoard, fetchEpochVault, fetchEpochVaultEntry, fetchEpochVaultIteration, fetchEpochVaultPage, fetchMaybeBoard, fetchMaybeEpochVault, fetchMaybeEpochVaultEntry, fetchMaybeEpochVaultIteration, fetchMaybeEpochVaultPage, fetchMaybeMiner, fetchMaybeOneBtcVault, fetchMaybeOneBtcVaultEntry, fetchMaybeOneBtcVaultIteration, fetchMaybePublicDeployment, fetchMaybeRound, fetchMaybeSatrushConfig, fetchMaybeSatsVault, fetchMaybeTreasury, fetchMiner, fetchOneBtcVault, fetchOneBtcVaultEntry, fetchOneBtcVaultIteration, fetchPublicDeployment, fetchRound, fetchSatrushConfig, fetchSatsVault, fetchTreasury, findBoardPda, findEpochVaultIterationPda, findEpochVaultPda, findInitialRoundPda, findMinerPda, findNextRoundPda, findOneBtcVaultIterationPda, findOneBtcVaultPda, findSatrushConfigPda, findSatsVaultPda, findTreasuryPda, getBoardAddress, getBoardCodec, getBoardDecoder, getBoardDiscriminatorBytes, getBoardEncoder, getBoardSize, getBuyEpochTicketsDiscriminatorBytes, getBuyEpochTicketsInstruction, getBuyEpochTicketsInstructionAsync, getBuyEpochTicketsInstructionDataCodec, getBuyEpochTicketsInstructionDataDecoder, getBuyEpochTicketsInstructionDataEncoder, getBuyOneBtcTicketsDiscriminatorBytes, getBuyOneBtcTicketsInstruction, getBuyOneBtcTicketsInstructionAsync, getBuyOneBtcTicketsInstructionDataCodec, getBuyOneBtcTicketsInstructionDataDecoder, getBuyOneBtcTicketsInstructionDataEncoder, getClaimEpochRewardDiscriminatorBytes, getClaimEpochRewardInstruction, getClaimEpochRewardInstructionAsync, getClaimEpochRewardInstructionDataCodec, getClaimEpochRewardInstructionDataDecoder, getClaimEpochRewardInstructionDataEncoder, getClaimOneBtcRewardDiscriminatorBytes, getClaimOneBtcRewardInstruction, getClaimOneBtcRewardInstructionAsync, getClaimOneBtcRewardInstructionDataCodec, getClaimOneBtcRewardInstructionDataDecoder, getClaimOneBtcRewardInstructionDataEncoder, getClaimSatsDiscriminatorBytes, getClaimSatsInstruction, getClaimSatsInstructionAsync, getClaimSatsInstructionDataCodec, getClaimSatsInstructionDataDecoder, getClaimSatsInstructionDataEncoder, getClaimUsdDiscriminatorBytes, getClaimUsdInstruction, getClaimUsdInstructionAsync, getClaimUsdInstructionDataCodec, getClaimUsdInstructionDataDecoder, getClaimUsdInstructionDataEncoder, getCloseEpochEntryDiscriminatorBytes, getCloseEpochEntryInstruction, getCloseEpochEntryInstructionAsync, getCloseEpochEntryInstructionDataCodec, getCloseEpochEntryInstructionDataDecoder, getCloseEpochEntryInstructionDataEncoder, getCloseEpochIterationDiscriminatorBytes, getCloseEpochIterationInstruction, getCloseEpochIterationInstructionAsync, getCloseEpochIterationInstructionDataCodec, getCloseEpochIterationInstructionDataDecoder, getCloseEpochIterationInstructionDataEncoder, getCloseEpochPageDiscriminatorBytes, getCloseEpochPageInstruction, getCloseEpochPageInstructionAsync, getCloseEpochPageInstructionDataCodec, getCloseEpochPageInstructionDataDecoder, getCloseEpochPageInstructionDataEncoder, getCloseOneBtcIterationDiscriminatorBytes, getCloseOneBtcIterationInstruction, getCloseOneBtcIterationInstructionAsync, getCloseOneBtcIterationInstructionDataCodec, getCloseOneBtcIterationInstructionDataDecoder, getCloseOneBtcIterationInstructionDataEncoder, getCloseOneBtcTicketDiscriminatorBytes, getCloseOneBtcTicketInstruction, getCloseOneBtcTicketInstructionDataCodec, getCloseOneBtcTicketInstructionDataDecoder, getCloseOneBtcTicketInstructionDataEncoder, getCreateBoardDiscriminatorBytes, getCreateBoardInstruction, getCreateBoardInstructionAsync, getCreateBoardInstructionDataCodec, getCreateBoardInstructionDataDecoder, getCreateBoardInstructionDataEncoder, getCreateEpochVaultDiscriminatorBytes, getCreateEpochVaultInstruction, getCreateEpochVaultInstructionAsync, getCreateEpochVaultInstructionDataCodec, getCreateEpochVaultInstructionDataDecoder, getCreateEpochVaultInstructionDataEncoder, getCreateOneBtcVaultDiscriminatorBytes, getCreateOneBtcVaultInstruction, getCreateOneBtcVaultInstructionAsync, getCreateOneBtcVaultInstructionDataCodec, getCreateOneBtcVaultInstructionDataDecoder, getCreateOneBtcVaultInstructionDataEncoder, getCreateSatrushConfigDiscriminatorBytes, getCreateSatrushConfigInstruction, getCreateSatrushConfigInstructionAsync, getCreateSatrushConfigInstructionDataCodec, getCreateSatrushConfigInstructionDataDecoder, getCreateSatrushConfigInstructionDataEncoder, getCreateSatsVaultDiscriminatorBytes, getCreateSatsVaultInstruction, getCreateSatsVaultInstructionAsync, getCreateSatsVaultInstructionDataCodec, getCreateSatsVaultInstructionDataDecoder, getCreateSatsVaultInstructionDataEncoder, getCreateTreasuryDiscriminatorBytes, getCreateTreasuryInstruction, getCreateTreasuryInstructionAsync, getCreateTreasuryInstructionDataCodec, getCreateTreasuryInstructionDataDecoder, getCreateTreasuryInstructionDataEncoder, getDeployPublicDiscriminatorBytes, getDeployPublicInstruction, getDeployPublicInstructionAsync, getDeployPublicInstructionDataCodec, getDeployPublicInstructionDataDecoder, getDeployPublicInstructionDataEncoder, getEpochDrawTriggeredCodec, getEpochDrawTriggeredDecoder, getEpochDrawTriggeredEncoder, getEpochStateCodec, getEpochStateDecoder, getEpochStateEncoder, getEpochTicketsBoughtCodec, getEpochTicketsBoughtDecoder, getEpochTicketsBoughtEncoder, getEpochVaultAddress, getEpochVaultCodec, getEpochVaultDecoder, getEpochVaultDiscriminatorBytes, getEpochVaultEncoder, getEpochVaultEntryAddress, getEpochVaultEntryCodec, getEpochVaultEntryDecoder, getEpochVaultEntryDiscriminatorBytes, getEpochVaultEntryEncoder, getEpochVaultEntrySize, getEpochVaultIterationAddress, getEpochVaultIterationCodec, getEpochVaultIterationDecoder, getEpochVaultIterationDiscriminatorBytes, getEpochVaultIterationEncoder, getEpochVaultIterationSize, getEpochVaultPageAddress, getEpochVaultPageCodec, getEpochVaultPageDecoder, getEpochVaultPageDiscriminatorBytes, getEpochVaultPageEncoder, getEpochVaultPageSize, getEpochVaultSize, getEpochWinnerSelectedCodec, getEpochWinnerSelectedDecoder, getEpochWinnerSelectedEncoder, getEventAuthorityAddress, getMinerAddress, getMinerCodec, getMinerDecoder, getMinerDiscriminatorBytes, getMinerEncoder, getMinerSize, getOneBtcDrawTriggeredCodec, getOneBtcDrawTriggeredDecoder, getOneBtcDrawTriggeredEncoder, getOneBtcStateCodec, getOneBtcStateDecoder, getOneBtcStateEncoder, getOneBtcTicketsBoughtCodec, getOneBtcTicketsBoughtDecoder, getOneBtcTicketsBoughtEncoder, getOneBtcVaultAddress, getOneBtcVaultCodec, getOneBtcVaultDecoder, getOneBtcVaultDiscriminatorBytes, getOneBtcVaultEncoder, getOneBtcVaultEntryCodec, getOneBtcVaultEntryDecoder, getOneBtcVaultEntryDiscriminatorBytes, getOneBtcVaultEntryEncoder, getOneBtcVaultEntrySize, getOneBtcVaultIterationAddress, getOneBtcVaultIterationCodec, getOneBtcVaultIterationDecoder, getOneBtcVaultIterationDiscriminatorBytes, getOneBtcVaultIterationEncoder, getOneBtcVaultIterationSize, getOneBtcVaultSize, getPageEntryCodec, getPageEntryDecoder, getPageEntryEncoder, getPublicDeploySettledCodec, getPublicDeploySettledDecoder, getPublicDeploySettledEncoder, getPublicDeploymentAddress, getPublicDeploymentCodec, getPublicDeploymentDecoder, getPublicDeploymentDiscriminatorBytes, getPublicDeploymentEncoder, getRotateRoundDiscriminatorBytes, getRotateRoundInstruction, getRotateRoundInstructionAsync, getRotateRoundInstructionDataCodec, getRotateRoundInstructionDataDecoder, getRotateRoundInstructionDataEncoder, getRoundAddress, getRoundCodec, getRoundDecoder, getRoundDiscriminatorBytes, getRoundEncoder, getRoundRevealedCodec, getRoundRevealedDecoder, getRoundRevealedEncoder, getRoundStakeSwappedCodec, getRoundStakeSwappedDecoder, getRoundStakeSwappedEncoder, getRoundStateCodec, getRoundStateDecoder, getRoundStateEncoder, getSatrushConfigAddress, getSatrushConfigCodec, getSatrushConfigDecoder, getSatrushConfigDiscriminatorBytes, getSatrushConfigEncoder, getSatrushConfigSize, getSatrushErrorMessage, getSatsVaultAddress, getSatsVaultCodec, getSatsVaultDecoder, getSatsVaultDiscriminatorBytes, getSatsVaultEncoder, getSatsVaultSize, getSealEpochPageDiscriminatorBytes, getSealEpochPageInstruction, getSealEpochPageInstructionAsync, getSealEpochPageInstructionDataCodec, getSealEpochPageInstructionDataDecoder, getSealEpochPageInstructionDataEncoder, getSelectEpochWinnerDiscriminatorBytes, getSelectEpochWinnerInstruction, getSelectEpochWinnerInstructionAsync, getSelectEpochWinnerInstructionDataCodec, getSelectEpochWinnerInstructionDataDecoder, getSelectEpochWinnerInstructionDataEncoder, getSettleDeployPublicDiscriminatorBytes, getSettleDeployPublicInstruction, getSettleDeployPublicInstructionAsync, getSettleDeployPublicInstructionDataCodec, getSettleDeployPublicInstructionDataDecoder, getSettleDeployPublicInstructionDataEncoder, getSwapEpochStakeDiscriminatorBytes, getSwapEpochStakeInstruction, getSwapEpochStakeInstructionAsync, getSwapEpochStakeInstructionDataCodec, getSwapEpochStakeInstructionDataDecoder, getSwapEpochStakeInstructionDataEncoder, getSwapOneBtcStakeDiscriminatorBytes, getSwapOneBtcStakeInstruction, getSwapOneBtcStakeInstructionAsync, getSwapOneBtcStakeInstructionDataCodec, getSwapOneBtcStakeInstructionDataDecoder, getSwapOneBtcStakeInstructionDataEncoder, getSwapRoundStakeDiscriminatorBytes, getSwapRoundStakeInstruction, getSwapRoundStakeInstructionAsync, getSwapRoundStakeInstructionDataCodec, getSwapRoundStakeInstructionDataDecoder, getSwapRoundStakeInstructionDataEncoder, getSwapStrikeStakeDiscriminatorBytes, getSwapStrikeStakeInstruction, getSwapStrikeStakeInstructionAsync, getSwapStrikeStakeInstructionDataCodec, getSwapStrikeStakeInstructionDataDecoder, getSwapStrikeStakeInstructionDataEncoder, getTileStakeCodec, getTileStakeDecoder, getTileStakeEncoder, getTreasuryAddress, getTreasuryCodec, getTreasuryDecoder, getTreasuryDiscriminatorBytes, getTreasuryEncoder, getTreasurySize, getTriggerEpochDrawDiscriminatorBytes, getTriggerEpochDrawInstruction, getTriggerEpochDrawInstructionAsync, getTriggerEpochDrawInstructionDataCodec, getTriggerEpochDrawInstructionDataDecoder, getTriggerEpochDrawInstructionDataEncoder, getTriggerOneBtcDrawDiscriminatorBytes, getTriggerOneBtcDrawInstruction, getTriggerOneBtcDrawInstructionAsync, getTriggerOneBtcDrawInstructionDataCodec, getTriggerOneBtcDrawInstructionDataDecoder, getTriggerOneBtcDrawInstructionDataEncoder, getUpdateBoardRoundDurationDiscriminatorBytes, getUpdateBoardRoundDurationInstruction, getUpdateBoardRoundDurationInstructionAsync, getUpdateBoardRoundDurationInstructionDataCodec, getUpdateBoardRoundDurationInstructionDataDecoder, getUpdateBoardRoundDurationInstructionDataEncoder, getWinnerCodec, getWinnerDecoder, getWinnerEncoder, getWithdrawProtocolFeesDiscriminatorBytes, getWithdrawProtocolFeesInstruction, getWithdrawProtocolFeesInstructionAsync, getWithdrawProtocolFeesInstructionDataCodec, getWithdrawProtocolFeesInstructionDataDecoder, getWithdrawProtocolFeesInstructionDataEncoder, identifySatrushAccount, identifySatrushInstruction, isSatrushError, parseBuyEpochTicketsInstruction, parseBuyOneBtcTicketsInstruction, parseClaimEpochRewardInstruction, parseClaimOneBtcRewardInstruction, parseClaimSatsInstruction, parseClaimUsdInstruction, parseCloseEpochEntryInstruction, parseCloseEpochIterationInstruction, parseCloseEpochPageInstruction, parseCloseOneBtcIterationInstruction, parseCloseOneBtcTicketInstruction, parseCreateBoardInstruction, parseCreateEpochVaultInstruction, parseCreateOneBtcVaultInstruction, parseCreateSatrushConfigInstruction, parseCreateSatsVaultInstruction, parseCreateTreasuryInstruction, parseDeployPublicInstruction, parseRotateRoundInstruction, parseSatrushInstruction, parseSealEpochPageInstruction, parseSelectEpochWinnerInstruction, parseSettleDeployPublicInstruction, parseSwapEpochStakeInstruction, parseSwapOneBtcStakeInstruction, parseSwapRoundStakeInstruction, parseSwapStrikeStakeInstruction, parseTriggerEpochDrawInstruction, parseTriggerOneBtcDrawInstruction, parseUpdateBoardRoundDurationInstruction, parseWithdrawProtocolFeesInstruction, satrushProgram, selectionMaskFromTiles, tilesFromSelectionMask };
5168
+ export { AutomationStrategy, type AutomationStrategyArgs, BOARD_DISCRIMINATOR, BUY_EPOCH_TICKETS_DISCRIMINATOR, BUY_ONE_BTC_TICKETS_DISCRIMINATOR, type Board, type BoardArgs, type BtcSharesValue, type BuyEpochTicketsAsyncInput, type BuyEpochTicketsInput, type BuyEpochTicketsInstruction, type BuyEpochTicketsInstructionData, type BuyEpochTicketsInstructionDataArgs, type BuyOneBtcTicketsAsyncInput, type BuyOneBtcTicketsInput, type BuyOneBtcTicketsInstruction, type BuyOneBtcTicketsInstructionData, type BuyOneBtcTicketsInstructionDataArgs, CANCEL_PUBLIC_AUTOMATION_DISCRIMINATOR, CLAIM_EPOCH_REWARD_DISCRIMINATOR, CLAIM_ONE_BTC_REWARD_DISCRIMINATOR, CLAIM_SATS_DISCRIMINATOR, CLAIM_USD_DISCRIMINATOR, CLOSE_EPOCH_ENTRY_DISCRIMINATOR, CLOSE_EPOCH_ITERATION_DISCRIMINATOR, CLOSE_EPOCH_PAGE_DISCRIMINATOR, CLOSE_ONE_BTC_ITERATION_DISCRIMINATOR, CLOSE_ONE_BTC_TICKET_DISCRIMINATOR, CREATE_BOARD_DISCRIMINATOR, CREATE_EPOCH_VAULT_DISCRIMINATOR, CREATE_ONE_BTC_VAULT_DISCRIMINATOR, CREATE_PUBLIC_AUTOMATION_DISCRIMINATOR, CREATE_SATRUSH_CONFIG_DISCRIMINATOR, CREATE_SATS_VAULT_DISCRIMINATOR, CREATE_TREASURY_DISCRIMINATOR, type CancelPublicAutomationAsyncInput, type CancelPublicAutomationInput, type CancelPublicAutomationInstruction, type CancelPublicAutomationInstructionData, type CancelPublicAutomationInstructionDataArgs, type ClaimEpochRewardAsyncInput, type ClaimEpochRewardInput, type ClaimEpochRewardInstruction, type ClaimEpochRewardInstructionData, type ClaimEpochRewardInstructionDataArgs, type ClaimOneBtcRewardAsyncInput, type ClaimOneBtcRewardInput, type ClaimOneBtcRewardInstruction, type ClaimOneBtcRewardInstructionData, type ClaimOneBtcRewardInstructionDataArgs, type ClaimSatsAsyncInput, type ClaimSatsInput, type ClaimSatsInstruction, type ClaimSatsInstructionData, type ClaimSatsInstructionDataArgs, type ClaimUsdAsyncInput, type ClaimUsdInput, type ClaimUsdInstruction, type ClaimUsdInstructionData, type ClaimUsdInstructionDataArgs, type CloseEpochEntryAsyncInput, type CloseEpochEntryInput, type CloseEpochEntryInstruction, type CloseEpochEntryInstructionData, type CloseEpochEntryInstructionDataArgs, type CloseEpochIterationAsyncInput, type CloseEpochIterationInput, type CloseEpochIterationInstruction, type CloseEpochIterationInstructionData, type CloseEpochIterationInstructionDataArgs, type CloseEpochPageAsyncInput, type CloseEpochPageInput, type CloseEpochPageInstruction, type CloseEpochPageInstructionData, type CloseEpochPageInstructionDataArgs, type CloseOneBtcIterationAsyncInput, type CloseOneBtcIterationInput, type CloseOneBtcIterationInstruction, type CloseOneBtcIterationInstructionData, type CloseOneBtcIterationInstructionDataArgs, type CloseOneBtcTicketInput, type CloseOneBtcTicketInstruction, type CloseOneBtcTicketInstructionData, type CloseOneBtcTicketInstructionDataArgs, type CreateBoardAsyncInput, type CreateBoardInput, type CreateBoardInstruction, type CreateBoardInstructionData, type CreateBoardInstructionDataArgs, type CreateEpochVaultAsyncInput, type CreateEpochVaultInput, type CreateEpochVaultInstruction, type CreateEpochVaultInstructionData, type CreateEpochVaultInstructionDataArgs, type CreateOneBtcVaultAsyncInput, type CreateOneBtcVaultInput, type CreateOneBtcVaultInstruction, type CreateOneBtcVaultInstructionData, type CreateOneBtcVaultInstructionDataArgs, type CreatePublicAutomationAsyncInput, type CreatePublicAutomationInput, type CreatePublicAutomationInstruction, type CreatePublicAutomationInstructionData, type CreatePublicAutomationInstructionDataArgs, type CreateSatrushConfigAsyncInput, type CreateSatrushConfigInput, type CreateSatrushConfigInstruction, type CreateSatrushConfigInstructionData, type CreateSatrushConfigInstructionDataArgs, type CreateSatsVaultAsyncInput, type CreateSatsVaultInput, type CreateSatsVaultInstruction, type CreateSatsVaultInstructionData, type CreateSatsVaultInstructionDataArgs, type CreateTreasuryAsyncInput, type CreateTreasuryInput, type CreateTreasuryInstruction, type CreateTreasuryInstructionData, type CreateTreasuryInstructionDataArgs, DEPLOY_PUBLIC_DISCRIMINATOR, type DeployPublicAsyncInput, type DeployPublicInput, type DeployPublicInstruction, type DeployPublicInstructionData, type DeployPublicInstructionDataArgs, EPOCH_VAULT_DISCRIMINATOR, EPOCH_VAULT_ENTRY_DISCRIMINATOR, EPOCH_VAULT_ITERATION_DISCRIMINATOR, EPOCH_VAULT_PAGE_DISCRIMINATOR, EXECUTE_PUBLIC_AUTOMATION_DISCRIMINATOR, type EpochDrawTriggered, type EpochDrawTriggeredArgs, EpochState, type EpochStateArgs, type EpochTicketsBought, type EpochTicketsBoughtArgs, type EpochVault, type EpochVaultArgs, type EpochVaultEntry, type EpochVaultEntryArgs, type EpochVaultIteration, type EpochVaultIterationArgs, type EpochVaultPage, type EpochVaultPageArgs, type EpochWinnerSelected, type EpochWinnerSelectedArgs, type ExecutePublicAutomationAsyncInput, type ExecutePublicAutomationInput, type ExecutePublicAutomationInstruction, type ExecutePublicAutomationInstructionData, type ExecutePublicAutomationInstructionDataArgs, MINER_DISCRIMINATOR, type Miner, type MinerArgs, type MinerSeeds, type NextRoundSeeds, ONE_BTC_VAULT_DISCRIMINATOR, ONE_BTC_VAULT_ENTRY_DISCRIMINATOR, ONE_BTC_VAULT_ITERATION_DISCRIMINATOR, type OneBtcDrawTriggered, type OneBtcDrawTriggeredArgs, OneBtcState, type OneBtcStateArgs, type OneBtcTicketsBought, type OneBtcTicketsBoughtArgs, type OneBtcVault, type OneBtcVaultArgs, type OneBtcVaultEntry, type OneBtcVaultEntryArgs, type OneBtcVaultIteration, type OneBtcVaultIterationArgs, PUBLIC_AUTOMATION_DISCRIMINATOR, PUBLIC_DEPLOYMENT_DISCRIMINATOR, type PageEntry, type PageEntryArgs, type ParsedBuyEpochTicketsInstruction, type ParsedBuyOneBtcTicketsInstruction, type ParsedCancelPublicAutomationInstruction, type ParsedClaimEpochRewardInstruction, type ParsedClaimOneBtcRewardInstruction, type ParsedClaimSatsInstruction, type ParsedClaimUsdInstruction, type ParsedCloseEpochEntryInstruction, type ParsedCloseEpochIterationInstruction, type ParsedCloseEpochPageInstruction, type ParsedCloseOneBtcIterationInstruction, type ParsedCloseOneBtcTicketInstruction, type ParsedCreateBoardInstruction, type ParsedCreateEpochVaultInstruction, type ParsedCreateOneBtcVaultInstruction, type ParsedCreatePublicAutomationInstruction, type ParsedCreateSatrushConfigInstruction, type ParsedCreateSatsVaultInstruction, type ParsedCreateTreasuryInstruction, type ParsedDeployPublicInstruction, type ParsedExecutePublicAutomationInstruction, type ParsedRotateRoundInstruction, type ParsedSatrushInstruction, type ParsedSealEpochPageInstruction, type ParsedSelectEpochWinnerInstruction, type ParsedSettleDeployPublicInstruction, type ParsedSwapEpochStakeInstruction, type ParsedSwapOneBtcStakeInstruction, type ParsedSwapRoundStakeInstruction, type ParsedSwapStrikeStakeInstruction, type ParsedTopUpPublicAutomationInstruction, type ParsedTriggerEpochDrawInstruction, type ParsedTriggerOneBtcDrawInstruction, type ParsedUpdateBoardRoundDurationInstruction, type ParsedWithdrawProtocolFeesInstruction, type PublicAutomation, type PublicAutomationArgs, type PublicAutomationSeeds, type PublicDeploySettled, type PublicDeploySettledArgs, type PublicDeployment, type PublicDeploymentArgs, ROTATE_ROUND_DISCRIMINATOR, ROUND_DISCRIMINATOR, type RotateRoundAsyncInput, type RotateRoundInput, type RotateRoundInstruction, type RotateRoundInstructionData, type RotateRoundInstructionDataArgs, type Round, type RoundArgs, type RoundRevealed, type RoundRevealedArgs, type RoundStakeSwapped, type RoundStakeSwappedArgs, RoundState, type RoundStateArgs, SATRUSH_CONFIG_DISCRIMINATOR, SATRUSH_ERROR__ALREADY_REVEALED, SATRUSH_ERROR__ALREADY_SETTLED, SATRUSH_ERROR__ALREADY_SWAPPED, SATRUSH_ERROR__BOARD_ALREADY_BOOTSTRAPPED, SATRUSH_ERROR__DEPLOYMENT_NOT_SETTLED, SATRUSH_ERROR__EPOCH_ALREADY_CLAIMED, SATRUSH_ERROR__EPOCH_BELOW_MIN_HASHRATE, SATRUSH_ERROR__EPOCH_BELOW_THRESHOLD, SATRUSH_ERROR__EPOCH_INVALID_PAGE, SATRUSH_ERROR__EPOCH_MAX_PARTICIPANTS, SATRUSH_ERROR__EPOCH_NOT_A_WINNER, SATRUSH_ERROR__EPOCH_NOT_OPEN, SATRUSH_ERROR__EPOCH_NOT_SETTLED, SATRUSH_ERROR__EPOCH_NOT_SETTLING, SATRUSH_ERROR__EPOCH_PAGE_ALREADY_SEALED, SATRUSH_ERROR__EPOCH_PAGE_NOT_SEALED, SATRUSH_ERROR__EPOCH_SEAL_MISMATCH, SATRUSH_ERROR__EPOCH_WINDOW_NOT_ELAPSED, SATRUSH_ERROR__INSUFFICIENT_AUTOMATION_BALANCE, SATRUSH_ERROR__INSUFFICIENT_HASHRATE, SATRUSH_ERROR__INSUFFICIENT_SHARES, SATRUSH_ERROR__INSUFFICIENT_UNCLAIMED_USD, SATRUSH_ERROR__INVALID_AUTOMATION_AMOUNT, SATRUSH_ERROR__INVALID_AUTOMATION_STRATEGY_MASK, SATRUSH_ERROR__INVALID_CLAIM_AMOUNT, SATRUSH_ERROR__INVALID_DEPLOYMENT_AMOUNT, SATRUSH_ERROR__INVALID_ENTROPY, SATRUSH_ERROR__INVALID_JUPITER_ROUTE, SATRUSH_ERROR__INVALID_ROUND_DURATION, SATRUSH_ERROR__INVALID_ROUND_ID, SATRUSH_ERROR__INVALID_SELECTION_MASK, SATRUSH_ERROR__INVALID_SHARE_AMOUNT, SATRUSH_ERROR__INVALID_SLOT_HASH, SATRUSH_ERROR__INVALID_SWAP_PROGRAM, SATRUSH_ERROR__MATH_OVERFLOW, SATRUSH_ERROR__MATH_UNDERFLOW, SATRUSH_ERROR__ONE_BTC_BELOW_MIN_HASHRATE, SATRUSH_ERROR__ONE_BTC_BELOW_THRESHOLD, SATRUSH_ERROR__ONE_BTC_NOT_A_WINNER, SATRUSH_ERROR__ONE_BTC_NOT_OPEN, SATRUSH_ERROR__ONE_BTC_NOT_SETTLED, SATRUSH_ERROR__ONE_BTC_NOT_TRIGGERABLE, SATRUSH_ERROR__ONE_BTC_NO_PARTICIPANTS, SATRUSH_ERROR__ONE_BTC_WINNING_TICKET_LOCKED, SATRUSH_ERROR__ROUND_IN_PROGRESS, SATRUSH_ERROR__ROUND_NOT_ACTIVE, SATRUSH_ERROR__ROUND_NOT_REVEALED, SATRUSH_ERROR__ROUND_NOT_SETTLED, SATRUSH_ERROR__ROUND_WINDOW_CLOSED, SATRUSH_ERROR__SLIPPAGE_EXCEEDED, SATRUSH_ERROR__STRIKE_ALREADY_TRIGGERED, SATRUSH_ERROR__STRIKE_BELOW_THRESHOLD, SATRUSH_ERROR__SWAP_OVERSPENT, SATRUSH_ERROR__TREASURY_EMPTY, SATRUSH_ERROR__UNAUTHORIZED, SATRUSH_PROGRAM_ADDRESS, SATS_VAULT_DISCRIMINATOR, SEAL_EPOCH_PAGE_DISCRIMINATOR, SELECT_EPOCH_WINNER_DISCRIMINATOR, SETTLE_DEPLOY_PUBLIC_DISCRIMINATOR, SWAP_EPOCH_STAKE_DISCRIMINATOR, SWAP_ONE_BTC_STAKE_DISCRIMINATOR, SWAP_ROUND_STAKE_DISCRIMINATOR, SWAP_STRIKE_STAKE_DISCRIMINATOR, SatrushAccount, type SatrushConfig, type SatrushConfigArgs, type SatrushError, SatrushInstruction, type SatrushPlugin, type SatrushPluginAccounts, type SatrushPluginInstructions, type SatrushPluginPdas, type SatrushPluginRequirements, type SatsVault, type SatsVaultArgs, type SealEpochPageAsyncInput, type SealEpochPageInput, type SealEpochPageInstruction, type SealEpochPageInstructionData, type SealEpochPageInstructionDataArgs, type SelectEpochWinnerAsyncInput, type SelectEpochWinnerInput, type SelectEpochWinnerInstruction, type SelectEpochWinnerInstructionData, type SelectEpochWinnerInstructionDataArgs, type SettleDeployPublicAsyncInput, type SettleDeployPublicInput, type SettleDeployPublicInstruction, type SettleDeployPublicInstructionData, type SettleDeployPublicInstructionDataArgs, type SwapEpochStakeAsyncInput, type SwapEpochStakeInput, type SwapEpochStakeInstruction, type SwapEpochStakeInstructionData, type SwapEpochStakeInstructionDataArgs, type SwapOneBtcStakeAsyncInput, type SwapOneBtcStakeInput, type SwapOneBtcStakeInstruction, type SwapOneBtcStakeInstructionData, type SwapOneBtcStakeInstructionDataArgs, type SwapRoundStakeAsyncInput, type SwapRoundStakeInput, type SwapRoundStakeInstruction, type SwapRoundStakeInstructionData, type SwapRoundStakeInstructionDataArgs, type SwapStrikeStakeAsyncInput, type SwapStrikeStakeInput, type SwapStrikeStakeInstruction, type SwapStrikeStakeInstructionData, type SwapStrikeStakeInstructionDataArgs, TILE_COUNT, TOP_UP_PUBLIC_AUTOMATION_DISCRIMINATOR, TREASURY_DISCRIMINATOR, TRIGGER_EPOCH_DRAW_DISCRIMINATOR, TRIGGER_ONE_BTC_DRAW_DISCRIMINATOR, type TileStake, type TileStakeArgs, type TopUpPublicAutomationAsyncInput, type TopUpPublicAutomationInput, type TopUpPublicAutomationInstruction, type TopUpPublicAutomationInstructionData, type TopUpPublicAutomationInstructionDataArgs, type Treasury, type TreasuryArgs, type TriggerEpochDrawAsyncInput, type TriggerEpochDrawInput, type TriggerEpochDrawInstruction, type TriggerEpochDrawInstructionData, type TriggerEpochDrawInstructionDataArgs, type TriggerOneBtcDrawAsyncInput, type TriggerOneBtcDrawInput, type TriggerOneBtcDrawInstruction, type TriggerOneBtcDrawInstructionData, type TriggerOneBtcDrawInstructionDataArgs, UPDATE_BOARD_ROUND_DURATION_DISCRIMINATOR, type UpdateBoardRoundDurationAsyncInput, type UpdateBoardRoundDurationInput, type UpdateBoardRoundDurationInstruction, type UpdateBoardRoundDurationInstructionData, type UpdateBoardRoundDurationInstructionDataArgs, WITHDRAW_PROTOCOL_FEES_DISCRIMINATOR, type Winner, type WinnerArgs, type WithdrawProtocolFeesAsyncInput, type WithdrawProtocolFeesInput, type WithdrawProtocolFeesInstruction, type WithdrawProtocolFeesInstructionData, type WithdrawProtocolFeesInstructionDataArgs, btcToSats, buildCancelPublicAutomationInstruction, buildClaimSatsInstruction, buildClaimUsdInstruction, buildCreatePublicAutomationInstruction, buildDeployPublicInstruction, buildExecutePublicAutomationInstruction, buildSettleDeployPublicInstruction, buildTopUpPublicAutomationInstruction, decodeBoard, decodeEpochVault, decodeEpochVaultEntry, decodeEpochVaultIteration, decodeEpochVaultPage, decodeMiner, decodeOneBtcVault, decodeOneBtcVaultEntry, decodeOneBtcVaultIteration, decodePublicAutomation, decodePublicDeployment, decodeRound, decodeSatrushConfig, decodeSatsVault, decodeTreasury, fetchAllBoard, fetchAllEpochVault, fetchAllEpochVaultEntry, fetchAllEpochVaultIteration, fetchAllEpochVaultPage, fetchAllMaybeBoard, fetchAllMaybeEpochVault, fetchAllMaybeEpochVaultEntry, fetchAllMaybeEpochVaultIteration, fetchAllMaybeEpochVaultPage, fetchAllMaybeMiner, fetchAllMaybeOneBtcVault, fetchAllMaybeOneBtcVaultEntry, fetchAllMaybeOneBtcVaultIteration, fetchAllMaybePublicAutomation, fetchAllMaybePublicDeployment, fetchAllMaybeRound, fetchAllMaybeSatrushConfig, fetchAllMaybeSatsVault, fetchAllMaybeTreasury, fetchAllMiner, fetchAllOneBtcVault, fetchAllOneBtcVaultEntry, fetchAllOneBtcVaultIteration, fetchAllPublicAutomation, fetchAllPublicDeployment, fetchAllRound, fetchAllSatrushConfig, fetchAllSatsVault, fetchAllTreasury, fetchBoard, fetchEpochVault, fetchEpochVaultEntry, fetchEpochVaultIteration, fetchEpochVaultPage, fetchMaybeBoard, fetchMaybeEpochVault, fetchMaybeEpochVaultEntry, fetchMaybeEpochVaultIteration, fetchMaybeEpochVaultPage, fetchMaybeMiner, fetchMaybeOneBtcVault, fetchMaybeOneBtcVaultEntry, fetchMaybeOneBtcVaultIteration, fetchMaybePublicAutomation, fetchMaybePublicDeployment, fetchMaybeRound, fetchMaybeSatrushConfig, fetchMaybeSatsVault, fetchMaybeTreasury, fetchMiner, fetchOneBtcVault, fetchOneBtcVaultEntry, fetchOneBtcVaultIteration, fetchPublicAutomation, fetchPublicDeployment, fetchRound, fetchSatrushConfig, fetchSatsVault, fetchTreasury, findBoardPda, findEpochVaultIterationPda, findEpochVaultPda, findInitialRoundPda, findMinerPda, findNextRoundPda, findOneBtcVaultIterationPda, findOneBtcVaultPda, findPublicAutomationPda, findSatrushConfigPda, findSatsVaultPda, findTreasuryPda, getAutomationStrategyCodec, getAutomationStrategyDecoder, getAutomationStrategyEncoder, getBoardAddress, getBoardCodec, getBoardDecoder, getBoardDiscriminatorBytes, getBoardEncoder, getBoardSize, getBuyEpochTicketsDiscriminatorBytes, getBuyEpochTicketsInstruction, getBuyEpochTicketsInstructionAsync, getBuyEpochTicketsInstructionDataCodec, getBuyEpochTicketsInstructionDataDecoder, getBuyEpochTicketsInstructionDataEncoder, getBuyOneBtcTicketsDiscriminatorBytes, getBuyOneBtcTicketsInstruction, getBuyOneBtcTicketsInstructionAsync, getBuyOneBtcTicketsInstructionDataCodec, getBuyOneBtcTicketsInstructionDataDecoder, getBuyOneBtcTicketsInstructionDataEncoder, getCancelPublicAutomationDiscriminatorBytes, getCancelPublicAutomationInstruction, getCancelPublicAutomationInstructionAsync, getCancelPublicAutomationInstructionDataCodec, getCancelPublicAutomationInstructionDataDecoder, getCancelPublicAutomationInstructionDataEncoder, getClaimEpochRewardDiscriminatorBytes, getClaimEpochRewardInstruction, getClaimEpochRewardInstructionAsync, getClaimEpochRewardInstructionDataCodec, getClaimEpochRewardInstructionDataDecoder, getClaimEpochRewardInstructionDataEncoder, getClaimOneBtcRewardDiscriminatorBytes, getClaimOneBtcRewardInstruction, getClaimOneBtcRewardInstructionAsync, getClaimOneBtcRewardInstructionDataCodec, getClaimOneBtcRewardInstructionDataDecoder, getClaimOneBtcRewardInstructionDataEncoder, getClaimSatsDiscriminatorBytes, getClaimSatsInstruction, getClaimSatsInstructionAsync, getClaimSatsInstructionDataCodec, getClaimSatsInstructionDataDecoder, getClaimSatsInstructionDataEncoder, getClaimUsdDiscriminatorBytes, getClaimUsdInstruction, getClaimUsdInstructionAsync, getClaimUsdInstructionDataCodec, getClaimUsdInstructionDataDecoder, getClaimUsdInstructionDataEncoder, getCloseEpochEntryDiscriminatorBytes, getCloseEpochEntryInstruction, getCloseEpochEntryInstructionAsync, getCloseEpochEntryInstructionDataCodec, getCloseEpochEntryInstructionDataDecoder, getCloseEpochEntryInstructionDataEncoder, getCloseEpochIterationDiscriminatorBytes, getCloseEpochIterationInstruction, getCloseEpochIterationInstructionAsync, getCloseEpochIterationInstructionDataCodec, getCloseEpochIterationInstructionDataDecoder, getCloseEpochIterationInstructionDataEncoder, getCloseEpochPageDiscriminatorBytes, getCloseEpochPageInstruction, getCloseEpochPageInstructionAsync, getCloseEpochPageInstructionDataCodec, getCloseEpochPageInstructionDataDecoder, getCloseEpochPageInstructionDataEncoder, getCloseOneBtcIterationDiscriminatorBytes, getCloseOneBtcIterationInstruction, getCloseOneBtcIterationInstructionAsync, getCloseOneBtcIterationInstructionDataCodec, getCloseOneBtcIterationInstructionDataDecoder, getCloseOneBtcIterationInstructionDataEncoder, getCloseOneBtcTicketDiscriminatorBytes, getCloseOneBtcTicketInstruction, getCloseOneBtcTicketInstructionDataCodec, getCloseOneBtcTicketInstructionDataDecoder, getCloseOneBtcTicketInstructionDataEncoder, getCreateBoardDiscriminatorBytes, getCreateBoardInstruction, getCreateBoardInstructionAsync, getCreateBoardInstructionDataCodec, getCreateBoardInstructionDataDecoder, getCreateBoardInstructionDataEncoder, getCreateEpochVaultDiscriminatorBytes, getCreateEpochVaultInstruction, getCreateEpochVaultInstructionAsync, getCreateEpochVaultInstructionDataCodec, getCreateEpochVaultInstructionDataDecoder, getCreateEpochVaultInstructionDataEncoder, getCreateOneBtcVaultDiscriminatorBytes, getCreateOneBtcVaultInstruction, getCreateOneBtcVaultInstructionAsync, getCreateOneBtcVaultInstructionDataCodec, getCreateOneBtcVaultInstructionDataDecoder, getCreateOneBtcVaultInstructionDataEncoder, getCreatePublicAutomationDiscriminatorBytes, getCreatePublicAutomationInstruction, getCreatePublicAutomationInstructionAsync, getCreatePublicAutomationInstructionDataCodec, getCreatePublicAutomationInstructionDataDecoder, getCreatePublicAutomationInstructionDataEncoder, getCreateSatrushConfigDiscriminatorBytes, getCreateSatrushConfigInstruction, getCreateSatrushConfigInstructionAsync, getCreateSatrushConfigInstructionDataCodec, getCreateSatrushConfigInstructionDataDecoder, getCreateSatrushConfigInstructionDataEncoder, getCreateSatsVaultDiscriminatorBytes, getCreateSatsVaultInstruction, getCreateSatsVaultInstructionAsync, getCreateSatsVaultInstructionDataCodec, getCreateSatsVaultInstructionDataDecoder, getCreateSatsVaultInstructionDataEncoder, getCreateTreasuryDiscriminatorBytes, getCreateTreasuryInstruction, getCreateTreasuryInstructionAsync, getCreateTreasuryInstructionDataCodec, getCreateTreasuryInstructionDataDecoder, getCreateTreasuryInstructionDataEncoder, getDeployPublicDiscriminatorBytes, getDeployPublicInstruction, getDeployPublicInstructionAsync, getDeployPublicInstructionDataCodec, getDeployPublicInstructionDataDecoder, getDeployPublicInstructionDataEncoder, getEpochDrawTriggeredCodec, getEpochDrawTriggeredDecoder, getEpochDrawTriggeredEncoder, getEpochStateCodec, getEpochStateDecoder, getEpochStateEncoder, getEpochTicketsBoughtCodec, getEpochTicketsBoughtDecoder, getEpochTicketsBoughtEncoder, getEpochVaultAddress, getEpochVaultCodec, getEpochVaultDecoder, getEpochVaultDiscriminatorBytes, getEpochVaultEncoder, getEpochVaultEntryAddress, getEpochVaultEntryCodec, getEpochVaultEntryDecoder, getEpochVaultEntryDiscriminatorBytes, getEpochVaultEntryEncoder, getEpochVaultEntrySize, getEpochVaultIterationAddress, getEpochVaultIterationCodec, getEpochVaultIterationDecoder, getEpochVaultIterationDiscriminatorBytes, getEpochVaultIterationEncoder, getEpochVaultIterationSize, getEpochVaultPageAddress, getEpochVaultPageCodec, getEpochVaultPageDecoder, getEpochVaultPageDiscriminatorBytes, getEpochVaultPageEncoder, getEpochVaultPageSize, getEpochVaultSize, getEpochWinnerSelectedCodec, getEpochWinnerSelectedDecoder, getEpochWinnerSelectedEncoder, getEventAuthorityAddress, getExecutePublicAutomationDiscriminatorBytes, getExecutePublicAutomationInstruction, getExecutePublicAutomationInstructionAsync, getExecutePublicAutomationInstructionDataCodec, getExecutePublicAutomationInstructionDataDecoder, getExecutePublicAutomationInstructionDataEncoder, getMinerAddress, getMinerCodec, getMinerDecoder, getMinerDiscriminatorBytes, getMinerEncoder, getMinerSize, getOneBtcDrawTriggeredCodec, getOneBtcDrawTriggeredDecoder, getOneBtcDrawTriggeredEncoder, getOneBtcStateCodec, getOneBtcStateDecoder, getOneBtcStateEncoder, getOneBtcTicketsBoughtCodec, getOneBtcTicketsBoughtDecoder, getOneBtcTicketsBoughtEncoder, getOneBtcVaultAddress, getOneBtcVaultCodec, getOneBtcVaultDecoder, getOneBtcVaultDiscriminatorBytes, getOneBtcVaultEncoder, getOneBtcVaultEntryCodec, getOneBtcVaultEntryDecoder, getOneBtcVaultEntryDiscriminatorBytes, getOneBtcVaultEntryEncoder, getOneBtcVaultEntrySize, getOneBtcVaultIterationAddress, getOneBtcVaultIterationCodec, getOneBtcVaultIterationDecoder, getOneBtcVaultIterationDiscriminatorBytes, getOneBtcVaultIterationEncoder, getOneBtcVaultIterationSize, getOneBtcVaultSize, getPageEntryCodec, getPageEntryDecoder, getPageEntryEncoder, getPublicAutomationAddress, getPublicAutomationCodec, getPublicAutomationDecoder, getPublicAutomationDiscriminatorBytes, getPublicAutomationEncoder, getPublicAutomationSize, getPublicDeploySettledCodec, getPublicDeploySettledDecoder, getPublicDeploySettledEncoder, getPublicDeploymentAddress, getPublicDeploymentCodec, getPublicDeploymentDecoder, getPublicDeploymentDiscriminatorBytes, getPublicDeploymentEncoder, getRotateRoundDiscriminatorBytes, getRotateRoundInstruction, getRotateRoundInstructionAsync, getRotateRoundInstructionDataCodec, getRotateRoundInstructionDataDecoder, getRotateRoundInstructionDataEncoder, getRoundAddress, getRoundCodec, getRoundDecoder, getRoundDiscriminatorBytes, getRoundEncoder, getRoundRevealedCodec, getRoundRevealedDecoder, getRoundRevealedEncoder, getRoundStakeSwappedCodec, getRoundStakeSwappedDecoder, getRoundStakeSwappedEncoder, getRoundStateCodec, getRoundStateDecoder, getRoundStateEncoder, getSatrushConfigAddress, getSatrushConfigCodec, getSatrushConfigDecoder, getSatrushConfigDiscriminatorBytes, getSatrushConfigEncoder, getSatrushConfigSize, getSatrushErrorMessage, getSatsVaultAddress, getSatsVaultCodec, getSatsVaultDecoder, getSatsVaultDiscriminatorBytes, getSatsVaultEncoder, getSatsVaultSize, getSealEpochPageDiscriminatorBytes, getSealEpochPageInstruction, getSealEpochPageInstructionAsync, getSealEpochPageInstructionDataCodec, getSealEpochPageInstructionDataDecoder, getSealEpochPageInstructionDataEncoder, getSelectEpochWinnerDiscriminatorBytes, getSelectEpochWinnerInstruction, getSelectEpochWinnerInstructionAsync, getSelectEpochWinnerInstructionDataCodec, getSelectEpochWinnerInstructionDataDecoder, getSelectEpochWinnerInstructionDataEncoder, getSettleDeployPublicDiscriminatorBytes, getSettleDeployPublicInstruction, getSettleDeployPublicInstructionAsync, getSettleDeployPublicInstructionDataCodec, getSettleDeployPublicInstructionDataDecoder, getSettleDeployPublicInstructionDataEncoder, getSwapEpochStakeDiscriminatorBytes, getSwapEpochStakeInstruction, getSwapEpochStakeInstructionAsync, getSwapEpochStakeInstructionDataCodec, getSwapEpochStakeInstructionDataDecoder, getSwapEpochStakeInstructionDataEncoder, getSwapOneBtcStakeDiscriminatorBytes, getSwapOneBtcStakeInstruction, getSwapOneBtcStakeInstructionAsync, getSwapOneBtcStakeInstructionDataCodec, getSwapOneBtcStakeInstructionDataDecoder, getSwapOneBtcStakeInstructionDataEncoder, getSwapRoundStakeDiscriminatorBytes, getSwapRoundStakeInstruction, getSwapRoundStakeInstructionAsync, getSwapRoundStakeInstructionDataCodec, getSwapRoundStakeInstructionDataDecoder, getSwapRoundStakeInstructionDataEncoder, getSwapStrikeStakeDiscriminatorBytes, getSwapStrikeStakeInstruction, getSwapStrikeStakeInstructionAsync, getSwapStrikeStakeInstructionDataCodec, getSwapStrikeStakeInstructionDataDecoder, getSwapStrikeStakeInstructionDataEncoder, getTileStakeCodec, getTileStakeDecoder, getTileStakeEncoder, getTopUpPublicAutomationDiscriminatorBytes, getTopUpPublicAutomationInstruction, getTopUpPublicAutomationInstructionAsync, getTopUpPublicAutomationInstructionDataCodec, getTopUpPublicAutomationInstructionDataDecoder, getTopUpPublicAutomationInstructionDataEncoder, getTreasuryAddress, getTreasuryCodec, getTreasuryDecoder, getTreasuryDiscriminatorBytes, getTreasuryEncoder, getTreasurySize, getTriggerEpochDrawDiscriminatorBytes, getTriggerEpochDrawInstruction, getTriggerEpochDrawInstructionAsync, getTriggerEpochDrawInstructionDataCodec, getTriggerEpochDrawInstructionDataDecoder, getTriggerEpochDrawInstructionDataEncoder, getTriggerOneBtcDrawDiscriminatorBytes, getTriggerOneBtcDrawInstruction, getTriggerOneBtcDrawInstructionAsync, getTriggerOneBtcDrawInstructionDataCodec, getTriggerOneBtcDrawInstructionDataDecoder, getTriggerOneBtcDrawInstructionDataEncoder, getUpdateBoardRoundDurationDiscriminatorBytes, getUpdateBoardRoundDurationInstruction, getUpdateBoardRoundDurationInstructionAsync, getUpdateBoardRoundDurationInstructionDataCodec, getUpdateBoardRoundDurationInstructionDataDecoder, getUpdateBoardRoundDurationInstructionDataEncoder, getWinnerCodec, getWinnerDecoder, getWinnerEncoder, getWithdrawProtocolFeesDiscriminatorBytes, getWithdrawProtocolFeesInstruction, getWithdrawProtocolFeesInstructionAsync, getWithdrawProtocolFeesInstructionDataCodec, getWithdrawProtocolFeesInstructionDataDecoder, getWithdrawProtocolFeesInstructionDataEncoder, identifySatrushAccount, identifySatrushInstruction, isSatrushError, parseBuyEpochTicketsInstruction, parseBuyOneBtcTicketsInstruction, parseCancelPublicAutomationInstruction, parseClaimEpochRewardInstruction, parseClaimOneBtcRewardInstruction, parseClaimSatsInstruction, parseClaimUsdInstruction, parseCloseEpochEntryInstruction, parseCloseEpochIterationInstruction, parseCloseEpochPageInstruction, parseCloseOneBtcIterationInstruction, parseCloseOneBtcTicketInstruction, parseCreateBoardInstruction, parseCreateEpochVaultInstruction, parseCreateOneBtcVaultInstruction, parseCreatePublicAutomationInstruction, parseCreateSatrushConfigInstruction, parseCreateSatsVaultInstruction, parseCreateTreasuryInstruction, parseDeployPublicInstruction, parseExecutePublicAutomationInstruction, parseRotateRoundInstruction, parseSatrushInstruction, parseSealEpochPageInstruction, parseSelectEpochWinnerInstruction, parseSettleDeployPublicInstruction, parseSwapEpochStakeInstruction, parseSwapOneBtcStakeInstruction, parseSwapRoundStakeInstruction, parseSwapStrikeStakeInstruction, parseTopUpPublicAutomationInstruction, parseTriggerEpochDrawInstruction, parseTriggerOneBtcDrawInstruction, parseUpdateBoardRoundDurationInstruction, parseWithdrawProtocolFeesInstruction, satrushProgram, satsToBtc, selectionMaskFromTiles, tilesFromSelectionMask };