@pump-fun/pump-sdk 1.25.0 → 1.26.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.
- package/dist/esm/index.js +21 -6
- package/dist/index.d.mts +42 -12
- package/dist/index.d.ts +42 -12
- package/dist/index.js +21 -6
- package/package.json +1 -1
- package/src/idl/pump.json +21 -6
- package/src/idl/pump.ts +21 -6
package/dist/esm/index.js
CHANGED
|
@@ -2596,15 +2596,30 @@ var pump_default = {
|
|
|
2596
2596
|
{
|
|
2597
2597
|
name: "buy_exact_sol_in",
|
|
2598
2598
|
docs: [
|
|
2599
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
2600
|
-
"
|
|
2599
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
2600
|
+
"Fees are deducted from spendable_sol_in.",
|
|
2601
2601
|
"",
|
|
2602
|
-
"
|
|
2602
|
+
"# Quote formulas",
|
|
2603
|
+
"Where:",
|
|
2604
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
2605
|
+
"- floor(a/b) = a / b (integer division)",
|
|
2606
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
2603
2607
|
"",
|
|
2604
|
-
"
|
|
2608
|
+
"SOL \u2192 tokens quote",
|
|
2609
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
2610
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
2611
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
2612
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
2613
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
2605
2614
|
"",
|
|
2606
|
-
"
|
|
2607
|
-
"
|
|
2615
|
+
"Reverse quote (tokens \u2192 SOL)",
|
|
2616
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
2617
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
2618
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
2619
|
+
"",
|
|
2620
|
+
"Rent",
|
|
2621
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
2622
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
2608
2623
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
2609
2624
|
],
|
|
2610
2625
|
discriminator: [
|
package/dist/index.d.mts
CHANGED
|
@@ -803,15 +803,30 @@ type Pump = {
|
|
|
803
803
|
{
|
|
804
804
|
"name": "buyExactSolIn";
|
|
805
805
|
"docs": [
|
|
806
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
807
|
-
"
|
|
806
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
807
|
+
"Fees are deducted from spendable_sol_in.",
|
|
808
808
|
"",
|
|
809
|
-
"
|
|
809
|
+
"# Quote formulas",
|
|
810
|
+
"Where:",
|
|
811
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
812
|
+
"- floor(a/b) = a / b (integer division)",
|
|
813
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
810
814
|
"",
|
|
811
|
-
"
|
|
815
|
+
"SOL → tokens quote",
|
|
816
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
817
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
818
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
819
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
820
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
812
821
|
"",
|
|
813
|
-
"
|
|
814
|
-
"
|
|
822
|
+
"Reverse quote (tokens → SOL)",
|
|
823
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
824
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
825
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
826
|
+
"",
|
|
827
|
+
"Rent",
|
|
828
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
829
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
815
830
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
816
831
|
];
|
|
817
832
|
"discriminator": [
|
|
@@ -7625,15 +7640,30 @@ var instructions = [
|
|
|
7625
7640
|
{
|
|
7626
7641
|
name: "buy_exact_sol_in",
|
|
7627
7642
|
docs: [
|
|
7628
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
7629
|
-
"
|
|
7643
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
7644
|
+
"Fees are deducted from spendable_sol_in.",
|
|
7645
|
+
"",
|
|
7646
|
+
"# Quote formulas",
|
|
7647
|
+
"Where:",
|
|
7648
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
7649
|
+
"- floor(a/b) = a / b (integer division)",
|
|
7650
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
7630
7651
|
"",
|
|
7631
|
-
"
|
|
7652
|
+
"SOL → tokens quote",
|
|
7653
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
7654
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
7655
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
7656
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
7657
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
7632
7658
|
"",
|
|
7633
|
-
"
|
|
7659
|
+
"Reverse quote (tokens → SOL)",
|
|
7660
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
7661
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
7662
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
7634
7663
|
"",
|
|
7635
|
-
"
|
|
7636
|
-
"
|
|
7664
|
+
"Rent",
|
|
7665
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
7666
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
7637
7667
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
7638
7668
|
],
|
|
7639
7669
|
discriminator: [
|
package/dist/index.d.ts
CHANGED
|
@@ -803,15 +803,30 @@ type Pump = {
|
|
|
803
803
|
{
|
|
804
804
|
"name": "buyExactSolIn";
|
|
805
805
|
"docs": [
|
|
806
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
807
|
-
"
|
|
806
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
807
|
+
"Fees are deducted from spendable_sol_in.",
|
|
808
808
|
"",
|
|
809
|
-
"
|
|
809
|
+
"# Quote formulas",
|
|
810
|
+
"Where:",
|
|
811
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
812
|
+
"- floor(a/b) = a / b (integer division)",
|
|
813
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
810
814
|
"",
|
|
811
|
-
"
|
|
815
|
+
"SOL → tokens quote",
|
|
816
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
817
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
818
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
819
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
820
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
812
821
|
"",
|
|
813
|
-
"
|
|
814
|
-
"
|
|
822
|
+
"Reverse quote (tokens → SOL)",
|
|
823
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
824
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
825
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
826
|
+
"",
|
|
827
|
+
"Rent",
|
|
828
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
829
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
815
830
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
816
831
|
];
|
|
817
832
|
"discriminator": [
|
|
@@ -7625,15 +7640,30 @@ var instructions = [
|
|
|
7625
7640
|
{
|
|
7626
7641
|
name: "buy_exact_sol_in",
|
|
7627
7642
|
docs: [
|
|
7628
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
7629
|
-
"
|
|
7643
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
7644
|
+
"Fees are deducted from spendable_sol_in.",
|
|
7645
|
+
"",
|
|
7646
|
+
"# Quote formulas",
|
|
7647
|
+
"Where:",
|
|
7648
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
7649
|
+
"- floor(a/b) = a / b (integer division)",
|
|
7650
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
7630
7651
|
"",
|
|
7631
|
-
"
|
|
7652
|
+
"SOL → tokens quote",
|
|
7653
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
7654
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
7655
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
7656
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
7657
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
7632
7658
|
"",
|
|
7633
|
-
"
|
|
7659
|
+
"Reverse quote (tokens → SOL)",
|
|
7660
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
7661
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
7662
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
7634
7663
|
"",
|
|
7635
|
-
"
|
|
7636
|
-
"
|
|
7664
|
+
"Rent",
|
|
7665
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
7666
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
7637
7667
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
7638
7668
|
],
|
|
7639
7669
|
discriminator: [
|
package/dist/index.js
CHANGED
|
@@ -2656,15 +2656,30 @@ var pump_default = {
|
|
|
2656
2656
|
{
|
|
2657
2657
|
name: "buy_exact_sol_in",
|
|
2658
2658
|
docs: [
|
|
2659
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
2660
|
-
"
|
|
2659
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
2660
|
+
"Fees are deducted from spendable_sol_in.",
|
|
2661
2661
|
"",
|
|
2662
|
-
"
|
|
2662
|
+
"# Quote formulas",
|
|
2663
|
+
"Where:",
|
|
2664
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
2665
|
+
"- floor(a/b) = a / b (integer division)",
|
|
2666
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
2663
2667
|
"",
|
|
2664
|
-
"
|
|
2668
|
+
"SOL \u2192 tokens quote",
|
|
2669
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
2670
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
2671
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
2672
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
2673
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
2665
2674
|
"",
|
|
2666
|
-
"
|
|
2667
|
-
"
|
|
2675
|
+
"Reverse quote (tokens \u2192 SOL)",
|
|
2676
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
2677
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
2678
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
2679
|
+
"",
|
|
2680
|
+
"Rent",
|
|
2681
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
2682
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
2668
2683
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
2669
2684
|
],
|
|
2670
2685
|
discriminator: [
|
package/package.json
CHANGED
package/src/idl/pump.json
CHANGED
|
@@ -792,15 +792,30 @@
|
|
|
792
792
|
{
|
|
793
793
|
"name": "buy_exact_sol_in",
|
|
794
794
|
"docs": [
|
|
795
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
796
|
-
"
|
|
795
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
796
|
+
"Fees are deducted from spendable_sol_in.",
|
|
797
797
|
"",
|
|
798
|
-
"
|
|
798
|
+
"# Quote formulas",
|
|
799
|
+
"Where:",
|
|
800
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
801
|
+
"- floor(a/b) = a / b (integer division)",
|
|
802
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
799
803
|
"",
|
|
800
|
-
"
|
|
804
|
+
"SOL → tokens quote",
|
|
805
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
806
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
807
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
808
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
809
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
801
810
|
"",
|
|
802
|
-
"
|
|
803
|
-
"
|
|
811
|
+
"Reverse quote (tokens → SOL)",
|
|
812
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
813
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
814
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
815
|
+
"",
|
|
816
|
+
"Rent",
|
|
817
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
818
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
804
819
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
805
820
|
],
|
|
806
821
|
"discriminator": [
|
package/src/idl/pump.ts
CHANGED
|
@@ -798,15 +798,30 @@ export type Pump = {
|
|
|
798
798
|
{
|
|
799
799
|
"name": "buyExactSolIn",
|
|
800
800
|
"docs": [
|
|
801
|
-
"Given a budget of spendable SOL, buy at least min_tokens_out",
|
|
802
|
-
"
|
|
801
|
+
"Given a budget of spendable SOL, buy at least min_tokens_out tokens.",
|
|
802
|
+
"Fees are deducted from spendable_sol_in.",
|
|
803
803
|
"",
|
|
804
|
-
"
|
|
804
|
+
"# Quote formulas",
|
|
805
|
+
"Where:",
|
|
806
|
+
"- total_fee_bps = protocol_fee_bps + creator_fee_bps (creator_fee_bps is 0 if no creator)",
|
|
807
|
+
"- floor(a/b) = a / b (integer division)",
|
|
808
|
+
"- ceil(a/b) = (a + b - 1) / b",
|
|
805
809
|
"",
|
|
806
|
-
"
|
|
810
|
+
"SOL → tokens quote",
|
|
811
|
+
"To calculate tokens_out for a given spendable_sol_in:",
|
|
812
|
+
"1. net_sol = floor(spendable_sol_in * 10_000 / (10_000 + total_fee_bps))",
|
|
813
|
+
"2. fees = ceil(net_sol * protocol_fee_bps / 10_000) + ceil(net_sol * creator_fee_bps / 10_000) (creator_fee_bps is 0 if no creator)",
|
|
814
|
+
"3. if net_sol + fees > spendable_sol_in: net_sol = net_sol - (net_sol + fees - spendable_sol_in)",
|
|
815
|
+
"4. tokens_out = floor((net_sol - 1) * virtual_token_reserves / (virtual_sol_reserves + net_sol - 1))",
|
|
807
816
|
"",
|
|
808
|
-
"
|
|
809
|
-
"
|
|
817
|
+
"Reverse quote (tokens → SOL)",
|
|
818
|
+
"To calculate spendable_sol_in for a desired number of tokens:",
|
|
819
|
+
"1. net_sol = ceil(tokens * virtual_sol_reserves / (virtual_token_reserves - tokens)) + 1",
|
|
820
|
+
"2. spendable_sol_in = ceil(net_sol * (10_000 + total_fee_bps) / 10_000)",
|
|
821
|
+
"",
|
|
822
|
+
"Rent",
|
|
823
|
+
"Separately make sure the instruction's payer has enough SOL to cover rent for:",
|
|
824
|
+
"- creator_vault: rent.minimum_balance(0)",
|
|
810
825
|
"- user_volume_accumulator: rent.minimum_balance(UserVolumeAccumulator::LEN)"
|
|
811
826
|
],
|
|
812
827
|
"discriminator": [
|