sablier 1.2.2-beta.1 → 1.3.0

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 (66) hide show
  1. package/dist/chains/data.d.ts.map +1 -1
  2. package/dist/chains/data.js +3 -2
  3. package/dist/chains/data.js.map +1 -1
  4. package/dist/index.d.ts +0 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +0 -1
  7. package/dist/index.js.map +1 -1
  8. package/dist/types.d.ts +3 -22
  9. package/dist/types.d.ts.map +1 -1
  10. package/package.json +2 -26
  11. package/dist/solana/chains/data.d.ts +0 -4
  12. package/dist/solana/chains/data.d.ts.map +0 -1
  13. package/dist/solana/chains/data.js +0 -85
  14. package/dist/solana/chains/data.js.map +0 -1
  15. package/dist/solana/chains/index.d.ts +0 -3
  16. package/dist/solana/chains/index.d.ts.map +0 -1
  17. package/dist/solana/chains/index.js +0 -42
  18. package/dist/solana/chains/index.js.map +0 -1
  19. package/dist/solana/enums.d.ts +0 -17
  20. package/dist/solana/enums.d.ts.map +0 -1
  21. package/dist/solana/enums.js +0 -24
  22. package/dist/solana/enums.js.map +0 -1
  23. package/dist/solana/idl/airdrops/index.d.ts +0 -2
  24. package/dist/solana/idl/airdrops/index.d.ts.map +0 -1
  25. package/dist/solana/idl/airdrops/index.js +0 -18
  26. package/dist/solana/idl/airdrops/index.js.map +0 -1
  27. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10.d.ts +0 -298
  28. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10.d.ts.map +0 -1
  29. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10.js +0 -1054
  30. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10.js.map +0 -1
  31. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10Type.d.ts +0 -1201
  32. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10Type.d.ts.map +0 -1
  33. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10Type.js +0 -3
  34. package/dist/solana/idl/airdrops/v1.0/SablierMerkleInstantV10Type.js.map +0 -1
  35. package/dist/solana/idl/airdrops/v1.0/index.d.ts +0 -3
  36. package/dist/solana/idl/airdrops/v1.0/index.d.ts.map +0 -1
  37. package/dist/solana/idl/airdrops/v1.0/index.js +0 -9
  38. package/dist/solana/idl/airdrops/v1.0/index.js.map +0 -1
  39. package/dist/solana/idl/index.d.ts +0 -3
  40. package/dist/solana/idl/index.d.ts.map +0 -1
  41. package/dist/solana/idl/index.js +0 -19
  42. package/dist/solana/idl/index.js.map +0 -1
  43. package/dist/solana/idl/lockup/index.d.ts +0 -2
  44. package/dist/solana/idl/lockup/index.d.ts.map +0 -1
  45. package/dist/solana/idl/lockup/index.js +0 -18
  46. package/dist/solana/idl/lockup/index.js.map +0 -1
  47. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10.d.ts +0 -413
  48. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10.d.ts.map +0 -1
  49. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10.js +0 -2230
  50. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10.js.map +0 -1
  51. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10Type.d.ts +0 -2679
  52. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10Type.d.ts.map +0 -1
  53. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10Type.js +0 -3
  54. package/dist/solana/idl/lockup/v1.0/SablierLockupLinearV10Type.js.map +0 -1
  55. package/dist/solana/idl/lockup/v1.0/index.d.ts +0 -3
  56. package/dist/solana/idl/lockup/v1.0/index.d.ts.map +0 -1
  57. package/dist/solana/idl/lockup/v1.0/index.js +0 -9
  58. package/dist/solana/idl/lockup/v1.0/index.js.map +0 -1
  59. package/dist/solana/index.d.ts +0 -4
  60. package/dist/solana/index.d.ts.map +0 -1
  61. package/dist/solana/index.js +0 -22
  62. package/dist/solana/index.js.map +0 -1
  63. package/dist/solana/types.d.ts +0 -7
  64. package/dist/solana/types.d.ts.map +0 -1
  65. package/dist/solana/types.js +0 -3
  66. package/dist/solana/types.js.map +0 -1
@@ -1,1201 +0,0 @@
1
- type Idl = {
2
- address: "7XrxoQejBoGouW4V3aozTSwub7xSDjYqB4Go7YLjF9rV";
3
- metadata: {
4
- name: "sablierMerkleInstant";
5
- version: "0.1.0";
6
- spec: "0.1.0";
7
- description: "Created with Anchor";
8
- };
9
- docs: ["Sablier Merkle Instant program for creating and managing Merkle tree-based airdrop campaigns."];
10
- instructions: [
11
- {
12
- name: "campaignView";
13
- docs: [
14
- "Retrieves the campaign details.",
15
- "",
16
- "# Accounts Expected",
17
- "",
18
- "- `campaign` The account that stores the campaign details."
19
- ];
20
- discriminator: [188, 126, 110, 5, 183, 113, 158, 3];
21
- accounts: [
22
- {
23
- name: "campaign";
24
- docs: ["Read account: the account storing the campaign data."];
25
- }
26
- ];
27
- args: [];
28
- returns: {
29
- defined: {
30
- name: "campaign";
31
- };
32
- };
33
- },
34
- {
35
- name: "claim";
36
- docs: [
37
- "Claims airdrop on behalf of eligible recipient and transfers it to the recipient ATA.",
38
- "",
39
- "# Accounts Expected",
40
- "",
41
- "- `claimer` The transaction signer.",
42
- "- `campaign` The account that stores the campaign details.",
43
- "- `recipient` The address of the airdrop recipient.",
44
- "- `airdrop_token_mint` The mint of the airdropped token.",
45
- "- `airdrop_token_program` The Token Program of the airdropped token.",
46
- "- `chainlink_program`: The Chainlink program used to retrieve on-chain price feeds.",
47
- "- `chainlink_sol_usd_feed`: The account providing the SOL/USD price feed data.",
48
- "",
49
- "# Parameters",
50
- "",
51
- "- `index` The index of the recipient in the Merkle tree.",
52
- "- `amount` The amount allocated to the recipient.",
53
- "- `merkle_proof` The proof of inclusion in the Merkle tree.",
54
- "",
55
- "# Notes",
56
- "",
57
- "- The instruction charges a fee in the native token (SOL), equivalent to $2 USD.",
58
- "- Emits a [`crate::utils::events::Claim`] event.",
59
- "",
60
- "# Requirements",
61
- "",
62
- "- The current time must be greater than or equal to the campaign start time.",
63
- "",
64
- "- The campaign must not have expired.",
65
- "- The recipient's airdrop has not been claimed yet.",
66
- "- The Merkle proof must be valid.",
67
- "- `chainlink_program` and `chainlink_sol_usd_feed` must match the ones stored in the treasury."
68
- ];
69
- discriminator: [62, 198, 214, 193, 213, 159, 108, 210];
70
- accounts: [
71
- {
72
- name: "claimer";
73
- docs: ["Write account: the signer of the claim who will pay the claim fee."];
74
- writable: true;
75
- signer: true;
76
- },
77
- {
78
- name: "recipient";
79
- docs: ["Read account: the recipient of the airdrop."];
80
- },
81
- {
82
- name: "recipientAta";
83
- docs: ["Create if needed account: the ATA for airdrop token owned by the recipient."];
84
- writable: true;
85
- pda: {
86
- seeds: [
87
- {
88
- kind: "account";
89
- path: "recipient";
90
- },
91
- {
92
- kind: "account";
93
- path: "airdropTokenProgram";
94
- },
95
- {
96
- kind: "account";
97
- path: "airdropTokenMint";
98
- }
99
- ];
100
- program: {
101
- kind: "const";
102
- value: [
103
- 140,
104
- 151,
105
- 37,
106
- 143,
107
- 78,
108
- 36,
109
- 137,
110
- 241,
111
- 187,
112
- 61,
113
- 16,
114
- 41,
115
- 20,
116
- 142,
117
- 13,
118
- 131,
119
- 11,
120
- 90,
121
- 19,
122
- 153,
123
- 218,
124
- 255,
125
- 16,
126
- 132,
127
- 4,
128
- 142,
129
- 123,
130
- 216,
131
- 219,
132
- 233,
133
- 248,
134
- 89
135
- ];
136
- };
137
- };
138
- },
139
- {
140
- name: "treasury";
141
- docs: ["Write account: the treasury account that will receive the claim fee."];
142
- writable: true;
143
- pda: {
144
- seeds: [
145
- {
146
- kind: "const";
147
- value: [116, 114, 101, 97, 115, 117, 114, 121];
148
- }
149
- ];
150
- };
151
- },
152
- {
153
- name: "airdropTokenMint";
154
- docs: ["Read account: the mint account of the airdrop token."];
155
- },
156
- {
157
- name: "campaign";
158
- docs: ["Write account: the account storing the campaign data."];
159
- writable: true;
160
- },
161
- {
162
- name: "campaignAta";
163
- docs: ["Write account: the campaign's ATA for the airdrop token."];
164
- writable: true;
165
- pda: {
166
- seeds: [
167
- {
168
- kind: "account";
169
- path: "campaign";
170
- },
171
- {
172
- kind: "account";
173
- path: "airdropTokenProgram";
174
- },
175
- {
176
- kind: "account";
177
- path: "airdropTokenMint";
178
- }
179
- ];
180
- program: {
181
- kind: "const";
182
- value: [
183
- 140,
184
- 151,
185
- 37,
186
- 143,
187
- 78,
188
- 36,
189
- 137,
190
- 241,
191
- 187,
192
- 61,
193
- 16,
194
- 41,
195
- 20,
196
- 142,
197
- 13,
198
- 131,
199
- 11,
200
- 90,
201
- 19,
202
- 153,
203
- 218,
204
- 255,
205
- 16,
206
- 132,
207
- 4,
208
- 142,
209
- 123,
210
- 216,
211
- 219,
212
- 233,
213
- 248,
214
- 89
215
- ];
216
- };
217
- };
218
- },
219
- {
220
- name: "claimReceipt";
221
- docs: ["Create account: the claim receipt."];
222
- writable: true;
223
- pda: {
224
- seeds: [
225
- {
226
- kind: "const";
227
- value: [99, 108, 97, 105, 109, 95, 114, 101, 99, 101, 105, 112, 116];
228
- },
229
- {
230
- kind: "account";
231
- path: "campaign";
232
- },
233
- {
234
- kind: "arg";
235
- path: "index";
236
- }
237
- ];
238
- };
239
- },
240
- {
241
- name: "airdropTokenProgram";
242
- docs: ["Program account: the Token program of the airdrop token."];
243
- },
244
- {
245
- name: "associatedTokenProgram";
246
- docs: ["Program account: the Associated Token program."];
247
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
248
- },
249
- {
250
- name: "chainlinkProgram";
251
- docs: ["Read account: The Chainlink program used to retrieve on-chain price feeds."];
252
- },
253
- {
254
- name: "chainlinkSolUsdFeed";
255
- docs: ["Read account: The account providing the SOL/USD price feed data."];
256
- },
257
- {
258
- name: "systemProgram";
259
- docs: ["Program account: the System program."];
260
- address: "11111111111111111111111111111111";
261
- }
262
- ];
263
- args: [
264
- {
265
- name: "index";
266
- type: "u32";
267
- },
268
- {
269
- name: "amount";
270
- type: "u64";
271
- },
272
- {
273
- name: "merkleProof";
274
- type: {
275
- vec: {
276
- array: ["u8", 32];
277
- };
278
- };
279
- }
280
- ];
281
- },
282
- {
283
- name: "claimFeeInLamports";
284
- docs: [
285
- "Calculates the claim fee in lamports, which is equivalent to $2 USD.",
286
- "",
287
- "# Accounts Expected:",
288
- "",
289
- "- `chainlink_program`: The Chainlink program used to retrieve on-chain price feeds.",
290
- "- `chainlink_sol_usd_feed`: The account providing the SOL/USD price feed data."
291
- ];
292
- discriminator: [255, 199, 146, 222, 145, 180, 58, 231];
293
- accounts: [
294
- {
295
- name: "treasury";
296
- docs: ["Read account: the treasury account that receives the claim fee."];
297
- pda: {
298
- seeds: [
299
- {
300
- kind: "const";
301
- value: [116, 114, 101, 97, 115, 117, 114, 121];
302
- }
303
- ];
304
- };
305
- },
306
- {
307
- name: "chainlinkProgram";
308
- docs: ["Read account: The Chainlink program used to retrieve on-chain price feeds."];
309
- },
310
- {
311
- name: "chainlinkSolUsdFeed";
312
- docs: ["Read account: The account providing the SOL/USD price feed data."];
313
- }
314
- ];
315
- args: [];
316
- returns: "u64";
317
- },
318
- {
319
- name: "clawback";
320
- docs: [
321
- "Claws back the unclaimed tokens from the campaign.",
322
- "",
323
- "# Accounts Expected",
324
- "",
325
- "- `campaign` The account that stores the campaign details.",
326
- "- `campaign_creator` The transaction signer.",
327
- "- `airdrop_token_mint` The mint of the airdropped token.",
328
- "- `airdrop_token_program` The Token Program of the airdropped token.",
329
- "",
330
- "# Parameters",
331
- "",
332
- "- `amount` The amount to claw back.",
333
- "",
334
- "# Notes",
335
- "",
336
- "- Emits a [`crate::utils::events::Clawback`] event.",
337
- "",
338
- "# Requirements",
339
- "",
340
- "- The signer must be the actual campaign creator.",
341
- "- No claim must be made, OR the current timestamp must not exceed 7 days after the first claim, OR the campaign",
342
- "must be expired."
343
- ];
344
- discriminator: [111, 92, 142, 79, 33, 234, 82, 27];
345
- accounts: [
346
- {
347
- name: "campaignCreator";
348
- docs: ["Write account: the campaign creator who will claw back the tokens."];
349
- writable: true;
350
- signer: true;
351
- },
352
- {
353
- name: "clawbackRecipient";
354
- docs: ["Read account: the clawback recipient."];
355
- },
356
- {
357
- name: "clawbackRecipientAta";
358
- docs: ["Create if needed account: the clawback recipient's ATA for the airdrop token."];
359
- writable: true;
360
- pda: {
361
- seeds: [
362
- {
363
- kind: "account";
364
- path: "clawbackRecipient";
365
- },
366
- {
367
- kind: "account";
368
- path: "airdropTokenProgram";
369
- },
370
- {
371
- kind: "account";
372
- path: "airdropTokenMint";
373
- }
374
- ];
375
- program: {
376
- kind: "const";
377
- value: [
378
- 140,
379
- 151,
380
- 37,
381
- 143,
382
- 78,
383
- 36,
384
- 137,
385
- 241,
386
- 187,
387
- 61,
388
- 16,
389
- 41,
390
- 20,
391
- 142,
392
- 13,
393
- 131,
394
- 11,
395
- 90,
396
- 19,
397
- 153,
398
- 218,
399
- 255,
400
- 16,
401
- 132,
402
- 4,
403
- 142,
404
- 123,
405
- 216,
406
- 219,
407
- 233,
408
- 248,
409
- 89
410
- ];
411
- };
412
- };
413
- },
414
- {
415
- name: "airdropTokenMint";
416
- docs: ["Read account: the mint account of the airdrop token."];
417
- },
418
- {
419
- name: "campaign";
420
- docs: ["Read account: the account storing the campaign data."];
421
- },
422
- {
423
- name: "campaignAta";
424
- docs: ["Write account: the campaign's ATA for the airdrop token."];
425
- writable: true;
426
- pda: {
427
- seeds: [
428
- {
429
- kind: "account";
430
- path: "campaign";
431
- },
432
- {
433
- kind: "account";
434
- path: "airdropTokenProgram";
435
- },
436
- {
437
- kind: "account";
438
- path: "airdropTokenMint";
439
- }
440
- ];
441
- program: {
442
- kind: "const";
443
- value: [
444
- 140,
445
- 151,
446
- 37,
447
- 143,
448
- 78,
449
- 36,
450
- 137,
451
- 241,
452
- 187,
453
- 61,
454
- 16,
455
- 41,
456
- 20,
457
- 142,
458
- 13,
459
- 131,
460
- 11,
461
- 90,
462
- 19,
463
- 153,
464
- 218,
465
- 255,
466
- 16,
467
- 132,
468
- 4,
469
- 142,
470
- 123,
471
- 216,
472
- 219,
473
- 233,
474
- 248,
475
- 89
476
- ];
477
- };
478
- };
479
- },
480
- {
481
- name: "airdropTokenProgram";
482
- docs: ["Program account: the Token program of the airdrop token."];
483
- },
484
- {
485
- name: "associatedTokenProgram";
486
- docs: ["Program account: the Associated Token program."];
487
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
488
- },
489
- {
490
- name: "systemProgram";
491
- docs: ["Program account: the System program."];
492
- address: "11111111111111111111111111111111";
493
- }
494
- ];
495
- args: [
496
- {
497
- name: "amount";
498
- type: "u64";
499
- }
500
- ];
501
- },
502
- {
503
- name: "collectFees";
504
- docs: [
505
- "Collects the fees accumulated in the treasury by transferring them to the fee recipient.",
506
- "",
507
- "# Accounts Expected",
508
- "",
509
- "- `fee_collector` The transaction signer and the fee collector.",
510
- "- `fee_recipient` The address receiving the collected fees.",
511
- "",
512
- "# Notes",
513
- "",
514
- '- To calculate the "collectable amount", the rent-exempt minimum balance and a 0.001 SOL buffer are deducted',
515
- "from the treasury SOL balance.",
516
- "- Emits a [`crate::utils::events::FeesCollected`] event.",
517
- "",
518
- "# Requirements",
519
- "",
520
- "- `fee_collector` must be authorized for fee collection.",
521
- '- The "collectable amount" must be greater than zero.'
522
- ];
523
- discriminator: [164, 152, 207, 99, 30, 186, 19, 182];
524
- accounts: [
525
- {
526
- name: "feeCollector";
527
- docs: ["Write account: the account authorized to collect fees from the treasury."];
528
- signer: true;
529
- },
530
- {
531
- name: "feeRecipient";
532
- docs: ["Write account: the address that will receive the collected fees."];
533
- writable: true;
534
- },
535
- {
536
- name: "treasury";
537
- docs: ["Write account: the treasury account that holds the fees."];
538
- writable: true;
539
- pda: {
540
- seeds: [
541
- {
542
- kind: "const";
543
- value: [116, 114, 101, 97, 115, 117, 114, 121];
544
- }
545
- ];
546
- };
547
- }
548
- ];
549
- args: [];
550
- },
551
- {
552
- name: "createCampaign";
553
- docs: [
554
- "Creates a Merkle Instant airdrop campaign.",
555
- "",
556
- "# Accounts Expected",
557
- "",
558
- "- `creator` The transaction signer and the campaign creator.",
559
- "- `airdrop_token_mint` The mint of the airdropped token.",
560
- "- `airdrop_token_program` The Token Program of the airdropped token.",
561
- "",
562
- "# Parameters",
563
- "",
564
- "- `merkle_root` The Merkle root of the claim data.",
565
- "- `campaign_start_time` The time when the campaign starts, in seconds since the Unix epoch.",
566
- "- `expiration_time` The time when the campaign expires, in seconds since the Unix epoch.",
567
- "A value of zero means the campaign does not expire.",
568
- "- `name` The name of the campaign.",
569
- "- `ipfs_cid` The content identifier for indexing the campaign on IPFS. An empty value may break some UI",
570
- "features that depend upon the IPFS CID.",
571
- "- `aggregate_amount` The total amount of tokens to be distributed to all recipients.",
572
- "- `recipient_count` The total number of recipient addresses eligible for the airdrop.",
573
- "",
574
- "# Notes",
575
- "",
576
- "- Emits a [`crate::utils::events::CreateCampaign`] event."
577
- ];
578
- discriminator: [111, 131, 187, 98, 160, 193, 114, 244];
579
- accounts: [
580
- {
581
- name: "creator";
582
- docs: ["Write account: the creator of the campaign."];
583
- writable: true;
584
- signer: true;
585
- },
586
- {
587
- name: "airdropTokenMint";
588
- docs: ["Read account: the mint account of the airdrop token."];
589
- },
590
- {
591
- name: "campaign";
592
- docs: ["Create account: the account storing the campaign data."];
593
- writable: true;
594
- pda: {
595
- seeds: [
596
- {
597
- kind: "const";
598
- value: [99, 97, 109, 112, 97, 105, 103, 110];
599
- },
600
- {
601
- kind: "account";
602
- path: "creator";
603
- },
604
- {
605
- kind: "arg";
606
- path: "merkleRoot";
607
- },
608
- {
609
- kind: "arg";
610
- path: "campaignStartTime";
611
- },
612
- {
613
- kind: "arg";
614
- path: "expirationTime";
615
- },
616
- {
617
- kind: "arg";
618
- path: "name";
619
- },
620
- {
621
- kind: "account";
622
- path: "airdropTokenMint";
623
- }
624
- ];
625
- };
626
- },
627
- {
628
- name: "campaignAta";
629
- docs: ["Create account: the campaign's ATA for the airdrop token."];
630
- writable: true;
631
- pda: {
632
- seeds: [
633
- {
634
- kind: "account";
635
- path: "campaign";
636
- },
637
- {
638
- kind: "account";
639
- path: "airdropTokenProgram";
640
- },
641
- {
642
- kind: "account";
643
- path: "airdropTokenMint";
644
- }
645
- ];
646
- program: {
647
- kind: "const";
648
- value: [
649
- 140,
650
- 151,
651
- 37,
652
- 143,
653
- 78,
654
- 36,
655
- 137,
656
- 241,
657
- 187,
658
- 61,
659
- 16,
660
- 41,
661
- 20,
662
- 142,
663
- 13,
664
- 131,
665
- 11,
666
- 90,
667
- 19,
668
- 153,
669
- 218,
670
- 255,
671
- 16,
672
- 132,
673
- 4,
674
- 142,
675
- 123,
676
- 216,
677
- 219,
678
- 233,
679
- 248,
680
- 89
681
- ];
682
- };
683
- };
684
- },
685
- {
686
- name: "airdropTokenProgram";
687
- docs: ["Program account: the Token program of the airdrop token."];
688
- },
689
- {
690
- name: "associatedTokenProgram";
691
- docs: ["Program account: the Associated Token program."];
692
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
693
- },
694
- {
695
- name: "systemProgram";
696
- docs: ["Program account: the System program."];
697
- address: "11111111111111111111111111111111";
698
- }
699
- ];
700
- args: [
701
- {
702
- name: "merkleRoot";
703
- type: {
704
- array: ["u8", 32];
705
- };
706
- },
707
- {
708
- name: "campaignStartTime";
709
- type: "u64";
710
- },
711
- {
712
- name: "expirationTime";
713
- type: "u64";
714
- },
715
- {
716
- name: "name";
717
- type: "string";
718
- },
719
- {
720
- name: "ipfsCid";
721
- type: "string";
722
- },
723
- {
724
- name: "aggregateAmount";
725
- type: "u64";
726
- },
727
- {
728
- name: "recipientCount";
729
- type: "u32";
730
- }
731
- ];
732
- },
733
- {
734
- name: "hasCampaignStarted";
735
- docs: [
736
- "Returns a flag indicating whether the campaign has started.",
737
- "",
738
- "# Accounts expected:",
739
- "",
740
- "- `campaign` The account that stores the campaign details."
741
- ];
742
- discriminator: [135, 101, 171, 220, 86, 97, 104, 199];
743
- accounts: [
744
- {
745
- name: "campaign";
746
- docs: ["Read account: the account storing the campaign data."];
747
- }
748
- ];
749
- args: [];
750
- returns: "bool";
751
- },
752
- {
753
- name: "hasClaimed";
754
- docs: [
755
- "Returns a flag indicating whether a claim has been made for the given index.",
756
- "",
757
- "# Accounts Expected",
758
- "",
759
- "- `campaign` The account that stores the campaign details.",
760
- "",
761
- "# Parameters",
762
- "",
763
- "- `_index` The index of the recipient in the Merkle tree."
764
- ];
765
- discriminator: [182, 195, 167, 56, 232, 3, 223, 102];
766
- accounts: [
767
- {
768
- name: "campaign";
769
- docs: ["Read account: the account storing the campaign data."];
770
- },
771
- {
772
- name: "claimReceipt";
773
- docs: ["Read account: the claim receipt."];
774
- pda: {
775
- seeds: [
776
- {
777
- kind: "const";
778
- value: [99, 108, 97, 105, 109, 95, 114, 101, 99, 101, 105, 112, 116];
779
- },
780
- {
781
- kind: "account";
782
- path: "campaign";
783
- },
784
- {
785
- kind: "arg";
786
- path: "index";
787
- }
788
- ];
789
- };
790
- }
791
- ];
792
- args: [
793
- {
794
- name: "index";
795
- type: "u32";
796
- }
797
- ];
798
- returns: "bool";
799
- },
800
- {
801
- name: "hasExpired";
802
- docs: [
803
- "Returns a flag indicating whether the campaign has expired.",
804
- "",
805
- "# Accounts Expected",
806
- "",
807
- "- `campaign` The account that stores the campaign details."
808
- ];
809
- discriminator: [24, 138, 30, 86, 92, 38, 143, 129];
810
- accounts: [
811
- {
812
- name: "campaign";
813
- docs: ["Read account: the account storing the campaign data."];
814
- }
815
- ];
816
- args: [];
817
- returns: "bool";
818
- },
819
- {
820
- name: "hasGracePeriodPassed";
821
- docs: [
822
- "Returns a flag indicating whether the grace period of the campaign has passed.",
823
- "",
824
- "# Accounts Expected",
825
- "",
826
- "- `campaign` The account that stores the campaign details.",
827
- "",
828
- "# Notes",
829
- "",
830
- "- A return value of `false` indicates: No claim has been made yet, OR the current timestamp does not exceed",
831
- "seven days after the first claim."
832
- ];
833
- discriminator: [223, 150, 181, 32, 240, 136, 73, 236];
834
- accounts: [
835
- {
836
- name: "campaign";
837
- docs: ["Read account: the account storing the campaign data."];
838
- }
839
- ];
840
- args: [];
841
- returns: "bool";
842
- },
843
- {
844
- name: "initialize";
845
- docs: [
846
- "Initializes the program with the provided fee collector address.",
847
- "",
848
- "# Accounts Expected",
849
- "",
850
- "- `initializer` The transaction signer.",
851
- "",
852
- "# Parameters",
853
- "",
854
- "- `fee_collector` The address that will have the authority to collect fees.",
855
- "- `chainlink_program`: The Chainlink program used to retrieve on-chain price feeds.",
856
- "- `chainlink_sol_usd_feed`: The account providing the SOL/USD price feed data."
857
- ];
858
- discriminator: [175, 175, 109, 31, 13, 152, 155, 237];
859
- accounts: [
860
- {
861
- name: "initializer";
862
- docs: ["Write account: the initializer of the program."];
863
- writable: true;
864
- signer: true;
865
- },
866
- {
867
- name: "treasury";
868
- docs: ["Create account: the treasury account that will hold the fees."];
869
- writable: true;
870
- pda: {
871
- seeds: [
872
- {
873
- kind: "const";
874
- value: [116, 114, 101, 97, 115, 117, 114, 121];
875
- }
876
- ];
877
- };
878
- },
879
- {
880
- name: "systemProgram";
881
- docs: ["Program account: the System program."];
882
- address: "11111111111111111111111111111111";
883
- }
884
- ];
885
- args: [
886
- {
887
- name: "feeCollector";
888
- type: "pubkey";
889
- },
890
- {
891
- name: "chainlinkProgram";
892
- type: "pubkey";
893
- },
894
- {
895
- name: "chainlinkSolUsdFeed";
896
- type: "pubkey";
897
- }
898
- ];
899
- },
900
- {
901
- name: "treasuryView";
902
- docs: ["Returns the treasury details."];
903
- discriminator: [247, 160, 213, 237, 247, 121, 164, 82];
904
- accounts: [
905
- {
906
- name: "treasury";
907
- docs: ["Read account: the account storing the treasury details."];
908
- pda: {
909
- seeds: [
910
- {
911
- kind: "const";
912
- value: [116, 114, 101, 97, 115, 117, 114, 121];
913
- }
914
- ];
915
- };
916
- }
917
- ];
918
- args: [];
919
- returns: {
920
- defined: {
921
- name: "treasury";
922
- };
923
- };
924
- }
925
- ];
926
- accounts: [
927
- {
928
- name: "campaign";
929
- discriminator: [50, 40, 49, 11, 157, 220, 229, 192];
930
- },
931
- {
932
- name: "claimReceipt";
933
- discriminator: [223, 233, 11, 229, 124, 165, 207, 28];
934
- },
935
- {
936
- name: "treasury";
937
- discriminator: [238, 239, 123, 238, 89, 1, 168, 253];
938
- }
939
- ];
940
- events: [
941
- {
942
- name: "claim";
943
- discriminator: [133, 98, 9, 238, 133, 207, 191, 113];
944
- },
945
- {
946
- name: "clawback";
947
- discriminator: [239, 144, 30, 69, 80, 59, 142, 64];
948
- },
949
- {
950
- name: "createCampaign";
951
- discriminator: [88, 178, 212, 72, 110, 4, 68, 143];
952
- },
953
- {
954
- name: "feesCollected";
955
- discriminator: [233, 23, 117, 225, 107, 178, 254, 8];
956
- }
957
- ];
958
- errors: [
959
- {
960
- code: 6000;
961
- name: "campaignExpired";
962
- msg: "Campaign has expired!";
963
- },
964
- {
965
- code: 6001;
966
- name: "invalidMerkleProof";
967
- msg: "Invalid Merkle proof!";
968
- },
969
- {
970
- code: 6002;
971
- name: "campaignNotStarted";
972
- msg: "Campaign has not started yet!";
973
- },
974
- {
975
- code: 6003;
976
- name: "clawbackNotAllowed";
977
- msg: "Clawback not allowed past the grace period and before campaign expiration!";
978
- },
979
- {
980
- code: 6004;
981
- name: "cantCollectZeroFees";
982
- msg: "Can't collect zero fees!";
983
- }
984
- ];
985
- types: [
986
- {
987
- name: "campaign";
988
- docs: ["Groups all the data for a Merkle Instant campaign."];
989
- type: {
990
- kind: "struct";
991
- fields: [
992
- {
993
- name: "airdropTokenMint";
994
- type: "pubkey";
995
- },
996
- {
997
- name: "bump";
998
- type: "u8";
999
- },
1000
- {
1001
- name: "campaignStartTime";
1002
- type: "u64";
1003
- },
1004
- {
1005
- name: "creator";
1006
- type: "pubkey";
1007
- },
1008
- {
1009
- name: "expirationTime";
1010
- type: "u64";
1011
- },
1012
- {
1013
- name: "firstClaimTime";
1014
- type: "u64";
1015
- },
1016
- {
1017
- name: "ipfsCid";
1018
- type: "string";
1019
- },
1020
- {
1021
- name: "merkleRoot";
1022
- type: {
1023
- array: ["u8", 32];
1024
- };
1025
- },
1026
- {
1027
- name: "name";
1028
- type: "string";
1029
- }
1030
- ];
1031
- };
1032
- },
1033
- {
1034
- name: "claim";
1035
- type: {
1036
- kind: "struct";
1037
- fields: [
1038
- {
1039
- name: "amount";
1040
- type: "u64";
1041
- },
1042
- {
1043
- name: "campaign";
1044
- type: "pubkey";
1045
- },
1046
- {
1047
- name: "claimer";
1048
- type: "pubkey";
1049
- },
1050
- {
1051
- name: "claimReceipt";
1052
- type: "pubkey";
1053
- },
1054
- {
1055
- name: "feeInLamports";
1056
- type: "u64";
1057
- },
1058
- {
1059
- name: "index";
1060
- type: "u32";
1061
- },
1062
- {
1063
- name: "recipient";
1064
- type: "pubkey";
1065
- }
1066
- ];
1067
- };
1068
- },
1069
- {
1070
- name: "claimReceipt";
1071
- type: {
1072
- kind: "struct";
1073
- fields: [];
1074
- };
1075
- },
1076
- {
1077
- name: "clawback";
1078
- type: {
1079
- kind: "struct";
1080
- fields: [
1081
- {
1082
- name: "amount";
1083
- type: "u64";
1084
- },
1085
- {
1086
- name: "campaign";
1087
- type: "pubkey";
1088
- },
1089
- {
1090
- name: "campaignCreator";
1091
- type: "pubkey";
1092
- },
1093
- {
1094
- name: "clawbackRecipient";
1095
- type: "pubkey";
1096
- }
1097
- ];
1098
- };
1099
- },
1100
- {
1101
- name: "createCampaign";
1102
- type: {
1103
- kind: "struct";
1104
- fields: [
1105
- {
1106
- name: "aggregateAmount";
1107
- type: "u64";
1108
- },
1109
- {
1110
- name: "campaign";
1111
- type: "pubkey";
1112
- },
1113
- {
1114
- name: "campaignName";
1115
- type: "string";
1116
- },
1117
- {
1118
- name: "campaignStartTime";
1119
- type: "u64";
1120
- },
1121
- {
1122
- name: "creator";
1123
- type: "pubkey";
1124
- },
1125
- {
1126
- name: "expirationTime";
1127
- type: "u64";
1128
- },
1129
- {
1130
- name: "ipfsCid";
1131
- type: "string";
1132
- },
1133
- {
1134
- name: "merkleRoot";
1135
- type: {
1136
- array: ["u8", 32];
1137
- };
1138
- },
1139
- {
1140
- name: "recipientCount";
1141
- type: "u32";
1142
- },
1143
- {
1144
- name: "tokenDecimals";
1145
- type: "u8";
1146
- },
1147
- {
1148
- name: "tokenMint";
1149
- type: "pubkey";
1150
- }
1151
- ];
1152
- };
1153
- },
1154
- {
1155
- name: "feesCollected";
1156
- type: {
1157
- kind: "struct";
1158
- fields: [
1159
- {
1160
- name: "feeAmount";
1161
- type: "u64";
1162
- },
1163
- {
1164
- name: "feeCollector";
1165
- type: "pubkey";
1166
- },
1167
- {
1168
- name: "feeRecipient";
1169
- type: "pubkey";
1170
- }
1171
- ];
1172
- };
1173
- },
1174
- {
1175
- name: "treasury";
1176
- type: {
1177
- kind: "struct";
1178
- fields: [
1179
- {
1180
- name: "bump";
1181
- type: "u8";
1182
- },
1183
- {
1184
- name: "feeCollector";
1185
- type: "pubkey";
1186
- },
1187
- {
1188
- name: "chainlinkProgram";
1189
- type: "pubkey";
1190
- },
1191
- {
1192
- name: "chainlinkSolUsdFeed";
1193
- type: "pubkey";
1194
- }
1195
- ];
1196
- };
1197
- }
1198
- ];
1199
- };
1200
- export default Idl;
1201
- //# sourceMappingURL=SablierMerkleInstantV10Type.d.ts.map