@sudobility/contracts 0.14.0 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/dist/evm/src/evm/{mailer-client.d.ts → evm-mailer-client.d.ts} +146 -50
  2. package/dist/evm/src/evm/evm-mailer-client.d.ts.map +1 -0
  3. package/dist/evm/src/evm/evm-mailer-client.js +924 -0
  4. package/dist/evm/src/evm/evm-mailer-client.js.map +1 -0
  5. package/dist/evm/src/evm/index.d.ts +1 -1
  6. package/dist/evm/src/evm/index.d.ts.map +1 -1
  7. package/dist/evm/src/evm/index.js +4 -4
  8. package/dist/evm/src/evm/index.js.map +1 -1
  9. package/dist/solana/solana/index.d.ts +1 -1
  10. package/dist/solana/solana/index.d.ts.map +1 -1
  11. package/dist/solana/solana/index.js +4 -3
  12. package/dist/solana/solana/index.js.map +1 -1
  13. package/dist/solana/solana/solana-mailer-client.d.ts +209 -0
  14. package/dist/solana/solana/solana-mailer-client.d.ts.map +1 -0
  15. package/dist/solana/solana/solana-mailer-client.js +1004 -0
  16. package/dist/solana/solana/solana-mailer-client.js.map +1 -0
  17. package/dist/solana/solana/types.d.ts +3 -2
  18. package/dist/solana/solana/types.d.ts.map +1 -1
  19. package/dist/solana/solana/types.js.map +1 -1
  20. package/dist/{unified-esm/src/evm/mailer-client.d.ts → unified/src/evm/evm-mailer-client.d.ts} +146 -50
  21. package/dist/unified/src/evm/evm-mailer-client.d.ts.map +1 -0
  22. package/dist/unified/src/evm/evm-mailer-client.js +924 -0
  23. package/dist/unified/src/evm/evm-mailer-client.js.map +1 -0
  24. package/dist/unified/src/evm/index.d.ts +1 -1
  25. package/dist/unified/src/evm/index.d.ts.map +1 -1
  26. package/dist/unified/src/evm/index.js +4 -4
  27. package/dist/unified/src/evm/index.js.map +1 -1
  28. package/dist/unified/src/react/context/MailerProvider.d.ts +26 -20
  29. package/dist/unified/src/react/context/MailerProvider.d.ts.map +1 -1
  30. package/dist/unified/src/react/context/MailerProvider.js +26 -26
  31. package/dist/unified/src/react/context/MailerProvider.js.map +1 -1
  32. package/dist/unified/src/react/hooks/useMailerMutations.d.ts +225 -192
  33. package/dist/unified/src/react/hooks/useMailerMutations.d.ts.map +1 -1
  34. package/dist/unified/src/react/hooks/useMailerMutations.js +263 -266
  35. package/dist/unified/src/react/hooks/useMailerMutations.js.map +1 -1
  36. package/dist/unified/src/react/hooks/useMailerQueries.d.ts +117 -63
  37. package/dist/unified/src/react/hooks/useMailerQueries.d.ts.map +1 -1
  38. package/dist/unified/src/react/hooks/useMailerQueries.js +239 -104
  39. package/dist/unified/src/react/hooks/useMailerQueries.js.map +1 -1
  40. package/dist/unified/src/react/index.d.ts +5 -3
  41. package/dist/unified/src/react/index.d.ts.map +1 -1
  42. package/dist/unified/src/react/index.js +41 -26
  43. package/dist/unified/src/react/index.js.map +1 -1
  44. package/dist/unified/src/solana/index.d.ts +1 -1
  45. package/dist/unified/src/solana/index.d.ts.map +1 -1
  46. package/dist/unified/src/solana/index.js +4 -3
  47. package/dist/unified/src/solana/index.js.map +1 -1
  48. package/dist/unified/src/solana/solana-mailer-client.d.ts +209 -0
  49. package/dist/unified/src/solana/solana-mailer-client.d.ts.map +1 -0
  50. package/dist/unified/src/solana/solana-mailer-client.js +1004 -0
  51. package/dist/unified/src/solana/solana-mailer-client.js.map +1 -0
  52. package/dist/unified/src/solana/types.d.ts +3 -2
  53. package/dist/unified/src/solana/types.d.ts.map +1 -1
  54. package/dist/unified/src/solana/types.js.map +1 -1
  55. package/dist/unified/src/unified/onchain-mailer-client.d.ts +224 -139
  56. package/dist/unified/src/unified/onchain-mailer-client.d.ts.map +1 -1
  57. package/dist/unified/src/unified/onchain-mailer-client.js +577 -857
  58. package/dist/unified/src/unified/onchain-mailer-client.js.map +1 -1
  59. package/dist/unified/src/unified/types.d.ts +9 -2
  60. package/dist/unified/src/unified/types.d.ts.map +1 -1
  61. package/dist/{unified/src/evm/mailer-client.d.ts → unified-esm/src/evm/evm-mailer-client.d.ts} +146 -50
  62. package/dist/unified-esm/src/evm/evm-mailer-client.d.ts.map +1 -0
  63. package/dist/unified-esm/src/evm/evm-mailer-client.js +920 -0
  64. package/dist/unified-esm/src/evm/evm-mailer-client.js.map +1 -0
  65. package/dist/unified-esm/src/evm/index.d.ts +1 -1
  66. package/dist/unified-esm/src/evm/index.d.ts.map +1 -1
  67. package/dist/unified-esm/src/evm/index.js +2 -2
  68. package/dist/unified-esm/src/evm/index.js.map +1 -1
  69. package/dist/unified-esm/src/react/context/MailerProvider.d.ts +26 -20
  70. package/dist/unified-esm/src/react/context/MailerProvider.d.ts.map +1 -1
  71. package/dist/unified-esm/src/react/context/MailerProvider.js +25 -26
  72. package/dist/unified-esm/src/react/context/MailerProvider.js.map +1 -1
  73. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts +225 -192
  74. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts.map +1 -1
  75. package/dist/unified-esm/src/react/hooks/useMailerMutations.js +254 -262
  76. package/dist/unified-esm/src/react/hooks/useMailerMutations.js.map +1 -1
  77. package/dist/unified-esm/src/react/hooks/useMailerQueries.d.ts +117 -63
  78. package/dist/unified-esm/src/react/hooks/useMailerQueries.d.ts.map +1 -1
  79. package/dist/unified-esm/src/react/hooks/useMailerQueries.js +232 -102
  80. package/dist/unified-esm/src/react/hooks/useMailerQueries.js.map +1 -1
  81. package/dist/unified-esm/src/react/index.d.ts +5 -3
  82. package/dist/unified-esm/src/react/index.d.ts.map +1 -1
  83. package/dist/unified-esm/src/react/index.js +9 -5
  84. package/dist/unified-esm/src/react/index.js.map +1 -1
  85. package/dist/unified-esm/src/solana/index.d.ts +1 -1
  86. package/dist/unified-esm/src/solana/index.d.ts.map +1 -1
  87. package/dist/unified-esm/src/solana/index.js +2 -1
  88. package/dist/unified-esm/src/solana/index.js.map +1 -1
  89. package/dist/unified-esm/src/solana/solana-mailer-client.d.ts +209 -0
  90. package/dist/unified-esm/src/solana/solana-mailer-client.d.ts.map +1 -0
  91. package/dist/unified-esm/src/solana/solana-mailer-client.js +1000 -0
  92. package/dist/unified-esm/src/solana/solana-mailer-client.js.map +1 -0
  93. package/dist/unified-esm/src/solana/types.d.ts +3 -2
  94. package/dist/unified-esm/src/solana/types.d.ts.map +1 -1
  95. package/dist/unified-esm/src/solana/types.js.map +1 -1
  96. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts +224 -139
  97. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts.map +1 -1
  98. package/dist/unified-esm/src/unified/onchain-mailer-client.js +579 -859
  99. package/dist/unified-esm/src/unified/onchain-mailer-client.js.map +1 -1
  100. package/dist/unified-esm/src/unified/types.d.ts +9 -2
  101. package/dist/unified-esm/src/unified/types.d.ts.map +1 -1
  102. package/package.json +3 -3
  103. package/dist/evm/src/evm/mailer-client.d.ts.map +0 -1
  104. package/dist/evm/src/evm/mailer-client.js +0 -619
  105. package/dist/evm/src/evm/mailer-client.js.map +0 -1
  106. package/dist/solana/solana/mailer-client.d.ts +0 -282
  107. package/dist/solana/solana/mailer-client.d.ts.map +0 -1
  108. package/dist/solana/solana/mailer-client.js +0 -989
  109. package/dist/solana/solana/mailer-client.js.map +0 -1
  110. package/dist/unified/src/evm/mailer-client.d.ts.map +0 -1
  111. package/dist/unified/src/evm/mailer-client.js +0 -619
  112. package/dist/unified/src/evm/mailer-client.js.map +0 -1
  113. package/dist/unified/src/solana/mailer-client.d.ts +0 -282
  114. package/dist/unified/src/solana/mailer-client.d.ts.map +0 -1
  115. package/dist/unified/src/solana/mailer-client.js +0 -989
  116. package/dist/unified/src/solana/mailer-client.js.map +0 -1
  117. package/dist/unified-esm/src/evm/mailer-client.d.ts.map +0 -1
  118. package/dist/unified-esm/src/evm/mailer-client.js +0 -615
  119. package/dist/unified-esm/src/evm/mailer-client.js.map +0 -1
  120. package/dist/unified-esm/src/solana/mailer-client.d.ts +0 -282
  121. package/dist/unified-esm/src/solana/mailer-client.d.ts.map +0 -1
  122. package/dist/unified-esm/src/solana/mailer-client.js +0 -985
  123. package/dist/unified-esm/src/solana/mailer-client.js.map +0 -1
@@ -0,0 +1,209 @@
1
+ import { Connection, PublicKey, Transaction } from '@solana/web3.js';
2
+ import { ChainInfo } from '@sudobility/configs';
3
+ import { Optional } from '@sudobility/types';
4
+ import { ClaimableInfo, MailerFees } from './types.js';
5
+ /**
6
+ * Interface for wallet adapter pattern
7
+ */
8
+ export interface Wallet {
9
+ publicKey: PublicKey;
10
+ signTransaction<T extends Transaction>(transaction: T): Promise<T>;
11
+ signAllTransactions<T extends Transaction>(transactions: T[]): Promise<T[]>;
12
+ }
13
+ /**
14
+ * Solana Wallet interface
15
+ */
16
+ export interface SolanaWallet {
17
+ wallet: Wallet;
18
+ connection?: Connection;
19
+ }
20
+ /**
21
+ * Compute unit optimization options for Solana transactions
22
+ */
23
+ export interface ComputeUnitOptions {
24
+ /**
25
+ * Compute unit limit for the transaction (default: 200,000)
26
+ * Max: 1,400,000
27
+ */
28
+ computeUnitLimit?: number;
29
+ /**
30
+ * Priority fee in micro-lamports per compute unit
31
+ * Higher values = faster inclusion during congestion
32
+ */
33
+ computeUnitPrice?: number;
34
+ /**
35
+ * Automatically simulate and optimize compute units
36
+ * @default false
37
+ */
38
+ autoOptimize?: boolean;
39
+ /**
40
+ * Multiplier for compute unit buffer when auto-optimizing
41
+ * @default 1.2 (20% buffer)
42
+ */
43
+ computeUnitMultiplier?: number;
44
+ /**
45
+ * Skip compute unit settings entirely
46
+ * @default false
47
+ */
48
+ skipComputeUnits?: boolean;
49
+ }
50
+ /**
51
+ * Transaction result with compute unit details
52
+ */
53
+ export interface TransactionResult {
54
+ /**
55
+ * Transaction signature
56
+ */
57
+ signature: string;
58
+ /**
59
+ * Transaction hash (same as signature for Solana)
60
+ */
61
+ transactionHash: string;
62
+ /**
63
+ * Simulated compute units (if auto-optimized)
64
+ */
65
+ simulatedUnits?: number;
66
+ /**
67
+ * Actual compute unit limit set
68
+ */
69
+ computeUnitLimit?: number;
70
+ /**
71
+ * Priority fee per compute unit (if set)
72
+ */
73
+ computeUnitPrice?: number;
74
+ }
75
+ /**
76
+ * Stateless Solana Mailer client.
77
+ * All methods take wallet and chainInfo as parameters.
78
+ * No state is stored in the instance.
79
+ */
80
+ export declare class SolanaMailerClient {
81
+ private defaultComputeUnitMultiplier;
82
+ private readonly defaultComputeUnits;
83
+ private readonly priorityFeeRecommendations;
84
+ /**
85
+ * Create or get connection from wallet/chainInfo
86
+ */
87
+ private getOrCreateConnection;
88
+ /**
89
+ * Get program and state PDAs from chainInfo
90
+ */
91
+ private getProgramAddresses;
92
+ /**
93
+ * Optimize compute units for a transaction
94
+ */
95
+ private optimizeComputeUnits;
96
+ /**
97
+ * Send and confirm transaction
98
+ */
99
+ private sendTransaction;
100
+ /**
101
+ * Initialize the mailer program (owner only)
102
+ */
103
+ initialize(connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
104
+ /**
105
+ * Send a message with optional revenue sharing
106
+ */
107
+ send(connectedWallet: SolanaWallet, chainInfo: ChainInfo, to: string | PublicKey, subject: string, body: string, revenueShareToReceiver: boolean, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
108
+ /**
109
+ * Send a prepared message
110
+ */
111
+ sendPrepared(connectedWallet: SolanaWallet, chainInfo: ChainInfo, to: string | PublicKey, mailId: string, revenueShareToReceiver: boolean, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
112
+ /**
113
+ * Send through webhook
114
+ */
115
+ sendThroughWebhook(connectedWallet: SolanaWallet, chainInfo: ChainInfo, to: string | PublicKey, subject: string, body: string, webhookId: string, revenueShareToReceiver: boolean, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
116
+ /**
117
+ * Send to email address
118
+ */
119
+ sendToEmail(emailHash: string, subject: string, body: string, payer: string | PublicKey, revenueShareToReceiver: boolean, connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
120
+ /**
121
+ * Send prepared to email address
122
+ */
123
+ sendPreparedToEmail(emailHash: string, mailId: string, payer: string | PublicKey, revenueShareToReceiver: boolean, connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
124
+ /**
125
+ * Claim recipient share
126
+ */
127
+ claimRecipientShare(connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
128
+ /**
129
+ * Claim owner share (owner only)
130
+ */
131
+ claimOwnerShare(connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
132
+ /**
133
+ * Claim expired shares (owner only)
134
+ */
135
+ claimExpiredShares(connectedWallet: SolanaWallet, chainInfo: ChainInfo, recipient: string | PublicKey, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
136
+ /**
137
+ * Delegate to another address
138
+ */
139
+ delegateTo(connectedWallet: SolanaWallet, chainInfo: ChainInfo, delegate: Optional<string | PublicKey>, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
140
+ /**
141
+ * Reject delegation
142
+ */
143
+ rejectDelegation(connectedWallet: SolanaWallet, chainInfo: ChainInfo, delegatingAddress: string | PublicKey, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
144
+ /**
145
+ * Set fees (owner only)
146
+ */
147
+ setFees(connectedWallet: SolanaWallet, chainInfo: ChainInfo, sendFee: number | bigint, delegationFee: number | bigint, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
148
+ /**
149
+ * Set custom fee percentage
150
+ */
151
+ setCustomFeePercentage(account: string | PublicKey, percentage: number, connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
152
+ /**
153
+ * Clear custom fee percentage
154
+ */
155
+ clearCustomFeePercentage(account: string | PublicKey, connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
156
+ /**
157
+ * Pause the program (owner only)
158
+ */
159
+ pause(connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
160
+ /**
161
+ * Unpause the program (owner only)
162
+ */
163
+ unpause(connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
164
+ /**
165
+ * Emergency unpause (owner only)
166
+ */
167
+ emergencyUnpause(connectedWallet: SolanaWallet, chainInfo: ChainInfo, computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
168
+ /**
169
+ * Distribute claimable funds when paused
170
+ */
171
+ distributeClaimableFunds(connectedWallet: SolanaWallet, chainInfo: ChainInfo, recipients: (string | PublicKey)[], computeOptions?: ComputeUnitOptions): Promise<TransactionResult>;
172
+ /**
173
+ * Get fees configuration
174
+ */
175
+ getFees(chainInfo: ChainInfo, connection?: Connection): Promise<MailerFees>;
176
+ /**
177
+ * Get send fee only
178
+ */
179
+ getSendFee(chainInfo: ChainInfo, connection?: Connection): Promise<bigint>;
180
+ /**
181
+ * Get delegation fee only
182
+ */
183
+ getDelegationFee(chainInfo: ChainInfo, connection?: Connection): Promise<bigint>;
184
+ /**
185
+ * Get recipient claimable info
186
+ */
187
+ getRecipientClaimable(recipient: string | PublicKey, chainInfo: ChainInfo, connection?: Connection): Promise<ClaimableInfo | null>;
188
+ /**
189
+ * Get owner claimable amount
190
+ */
191
+ getOwnerClaimable(chainInfo: ChainInfo, connection?: Connection): Promise<number>;
192
+ /**
193
+ * Get delegation for an address
194
+ */
195
+ getDelegation(address: string | PublicKey, chainInfo: ChainInfo, connection?: Connection): Promise<PublicKey | null>;
196
+ /**
197
+ * Get custom fee percentage for an account
198
+ */
199
+ getCustomFeePercentage(account: string | PublicKey, chainInfo: ChainInfo, connection?: Connection): Promise<number>;
200
+ /**
201
+ * Check if the program is paused
202
+ */
203
+ isPaused(chainInfo: ChainInfo, connection?: Connection): Promise<boolean>;
204
+ /**
205
+ * Get the contract owner
206
+ */
207
+ getOwner(chainInfo: ChainInfo, connection?: Connection): Promise<PublicKey>;
208
+ }
209
+ //# sourceMappingURL=solana-mailer-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana-mailer-client.d.ts","sourceRoot":"","sources":["../../../../src/solana/solana-mailer-client.ts"],"names":[],"mappings":"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"}