@merkl/api 1.3.74 → 1.3.76

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 (44) hide show
  1. package/dist/src/eden/index.d.ts +331 -337
  2. package/dist/src/engine/deprecated/dynamicData/implementations/Erc20.js.map +1 -1
  3. package/dist/src/engine/implementations/Erc20/metadata.js.map +1 -1
  4. package/dist/src/index.d.ts +435 -437
  5. package/dist/src/jobs/post-urgent-stack.js.map +1 -1
  6. package/dist/src/jobs/prices.js.map +1 -1
  7. package/dist/src/jobs/update-dynamic-data.js.map +1 -1
  8. package/dist/src/modules/v4/campaign/campaign.controller.d.ts +79 -79
  9. package/dist/src/modules/v4/campaign/campaign.controller.js.map +1 -1
  10. package/dist/src/modules/v4/campaign/campaign.convertor.d.ts +1 -1
  11. package/dist/src/modules/v4/campaign/campaign.convertor.js.map +1 -1
  12. package/dist/src/modules/v4/campaign/campaign.test.controller.d.ts +237 -237
  13. package/dist/src/modules/v4/campaign/campaign.test.controller.js.map +1 -1
  14. package/dist/src/modules/v4/coingecko/coingecko.service.js.map +1 -1
  15. package/dist/src/modules/v4/dynamicData/dynamicData.service.js.map +1 -1
  16. package/dist/src/modules/v4/liquidity/implementations/AjnaPositionFetcher.js.map +1 -1
  17. package/dist/src/modules/v4/liquidity/implementations/BadgerPositionFetcher.js.map +1 -1
  18. package/dist/src/modules/v4/liquidity/implementations/ClammPositionFetcher.js.map +1 -1
  19. package/dist/src/modules/v4/liquidity/implementations/DolomitePositionFetcher.js.map +1 -1
  20. package/dist/src/modules/v4/opportunity/opportunity.converter.js.map +1 -1
  21. package/dist/src/modules/v4/priceSource/priceSource.controller.d.ts +76 -78
  22. package/dist/src/modules/v4/priceSource/priceSource.controller.js.map +1 -1
  23. package/dist/src/modules/v4/priceSource/priceSource.model.d.ts +2 -10
  24. package/dist/src/modules/v4/priceSource/priceSource.model.js.map +1 -1
  25. package/dist/src/modules/v4/priceSource/priceSource.repository.d.ts +13 -2
  26. package/dist/src/modules/v4/priceSource/priceSource.repository.js.map +1 -1
  27. package/dist/src/modules/v4/priceSource/priceSource.service.d.ts +11 -1
  28. package/dist/src/modules/v4/priceSource/priceSource.service.js.map +1 -1
  29. package/dist/src/modules/v4/router.d.ts +392 -394
  30. package/dist/src/modules/v4/token/token.repository.d.ts +14 -2
  31. package/dist/src/modules/v4/token/token.repository.js.map +1 -1
  32. package/dist/src/modules/v4/token/token.service.d.ts +15 -3
  33. package/dist/src/modules/v4/token/token.service.js.map +1 -1
  34. package/dist/src/routes/v3/campaigns.js.map +1 -1
  35. package/dist/src/utils/prices/priceService.js.map +1 -1
  36. package/dist/src/utils/prices/services/OnChainCallService.d.ts +1 -1
  37. package/dist/src/utils/prices/services/OnChainCallService.js.map +1 -1
  38. package/dist/src/utils/prices/services/coinGeckoService.js.map +1 -1
  39. package/dist/src/utils/prices/services/defillamaService.js.map +1 -1
  40. package/dist/src/utils/prices/services/erc4626Service.js.map +1 -1
  41. package/dist/src/utils/prices/services/indexCoopService.js.map +1 -1
  42. package/dist/src/utils/prices/services/priceFetcher.d.ts +2 -2
  43. package/dist/src/utils/prices/services/uniswapV2PriceService.js.map +1 -1
  44. package/package.json +1 -1
@@ -1885,6 +1885,85 @@ export declare const v4: Elysia<"/v4", {
1885
1885
  };
1886
1886
  response: {
1887
1887
  200: {
1888
+ id: string;
1889
+ chainId: number;
1890
+ type: string;
1891
+ identifier: string;
1892
+ name: string;
1893
+ status: "LIVE" | "PAST" | "SOON";
1894
+ action: any;
1895
+ tokens: ({
1896
+ address: string;
1897
+ chainId: number;
1898
+ decimals: number;
1899
+ icon: string;
1900
+ id: string;
1901
+ isNative: boolean;
1902
+ isTest: boolean;
1903
+ name: string | null;
1904
+ symbol: string;
1905
+ type: import("@package/databases").TokenType;
1906
+ verified: boolean;
1907
+ } & {
1908
+ price?: number | null | undefined;
1909
+ updatedAt?: number | null | undefined;
1910
+ priceSource?: string | null | undefined;
1911
+ isTokenWrapper?: boolean | undefined;
1912
+ tokenWrapperAddress?: string | undefined;
1913
+ })[];
1914
+ mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
1915
+ description: string;
1916
+ howToSteps: string[];
1917
+ depositUrl: string | undefined;
1918
+ explorerAddress: string | undefined;
1919
+ tags: string[];
1920
+ } | {
1921
+ id: string;
1922
+ chainId: number;
1923
+ type: string;
1924
+ identifier: string;
1925
+ name: string;
1926
+ description: string;
1927
+ howToSteps: string[];
1928
+ depositUrl: string | null;
1929
+ explorerAddress: string | null;
1930
+ status: import("@package/databases").Status;
1931
+ action: import("@package/databases").OpportunityAction;
1932
+ mainProtocolId: string | null;
1933
+ tvl: number;
1934
+ apr: number;
1935
+ maxApr: number | null;
1936
+ dailyRewards: number;
1937
+ tags: string[];
1938
+ lastCampaignCreatedAt: Date;
1939
+ manualOverrides: import("@package/databases").OpportunityManualOverride[];
1940
+ liveCampaigns: number;
1941
+ Protocols: {
1942
+ id: string;
1943
+ tags: string[];
1944
+ name: string;
1945
+ description: string;
1946
+ url: string;
1947
+ icon: string;
1948
+ }[];
1949
+ Tokens: {
1950
+ id: string;
1951
+ name: string | null;
1952
+ chainId: number;
1953
+ address: string;
1954
+ decimals: number;
1955
+ symbol: string;
1956
+ displaySymbol: string;
1957
+ icon: string;
1958
+ verified: boolean;
1959
+ isTest: boolean;
1960
+ type: import("@package/databases").TokenType;
1961
+ isNative: boolean;
1962
+ price: number | null;
1963
+ updatedAt: number | null;
1964
+ priceSource: string | null;
1965
+ }[];
1966
+ } | {
1888
1967
  distributionChain?: ({
1889
1968
  endOfDisputePeriod: number;
1890
1969
  icon: string;
@@ -2004,85 +2083,6 @@ export declare const v4: Elysia<"/v4", {
2004
2083
  startTimestamp: number;
2005
2084
  subType: number | null;
2006
2085
  type: string;
2007
- } | {
2008
- id: string;
2009
- chainId: number;
2010
- type: string;
2011
- identifier: string;
2012
- name: string;
2013
- status: "LIVE" | "PAST" | "SOON";
2014
- action: any;
2015
- tokens: ({
2016
- address: string;
2017
- chainId: number;
2018
- decimals: number;
2019
- icon: string;
2020
- id: string;
2021
- isNative: boolean;
2022
- isTest: boolean;
2023
- name: string | null;
2024
- symbol: string;
2025
- type: import("@package/databases").TokenType;
2026
- verified: boolean;
2027
- } & {
2028
- price?: number | null | undefined;
2029
- updatedAt?: number | null | undefined;
2030
- priceSource?: string | null | undefined;
2031
- isTokenWrapper?: boolean | undefined;
2032
- tokenWrapperAddress?: string | undefined;
2033
- })[];
2034
- mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
2035
- description: string;
2036
- howToSteps: string[];
2037
- depositUrl: string | undefined;
2038
- explorerAddress: string | undefined;
2039
- tags: string[];
2040
- } | {
2041
- id: string;
2042
- chainId: number;
2043
- type: string;
2044
- identifier: string;
2045
- name: string;
2046
- description: string;
2047
- howToSteps: string[];
2048
- depositUrl: string | null;
2049
- explorerAddress: string | null;
2050
- status: import("@package/databases").Status;
2051
- action: import("@package/databases").OpportunityAction;
2052
- mainProtocolId: string | null;
2053
- tvl: number;
2054
- apr: number;
2055
- maxApr: number | null;
2056
- dailyRewards: number;
2057
- tags: string[];
2058
- lastCampaignCreatedAt: Date;
2059
- manualOverrides: import("@package/databases").OpportunityManualOverride[];
2060
- liveCampaigns: number;
2061
- Protocols: {
2062
- id: string;
2063
- tags: string[];
2064
- name: string;
2065
- description: string;
2066
- url: string;
2067
- icon: string;
2068
- }[];
2069
- Tokens: {
2070
- id: string;
2071
- name: string | null;
2072
- chainId: number;
2073
- address: string;
2074
- decimals: number;
2075
- symbol: string;
2076
- displaySymbol: string;
2077
- icon: string;
2078
- verified: boolean;
2079
- isTest: boolean;
2080
- type: import("@package/databases").TokenType;
2081
- isNative: boolean;
2082
- price: number | null;
2083
- updatedAt: number | null;
2084
- priceSource: string | null;
2085
- }[];
2086
2086
  };
2087
2087
  422: {
2088
2088
  type: "validation";
@@ -4625,6 +4625,85 @@ export declare const v4: Elysia<"/v4", {
4625
4625
  };
4626
4626
  response: {
4627
4627
  200: {
4628
+ id: string;
4629
+ chainId: number;
4630
+ type: string;
4631
+ identifier: string;
4632
+ name: string;
4633
+ status: "LIVE" | "PAST" | "SOON";
4634
+ action: any;
4635
+ tokens: ({
4636
+ address: string;
4637
+ chainId: number;
4638
+ decimals: number;
4639
+ icon: string;
4640
+ id: string;
4641
+ isNative: boolean;
4642
+ isTest: boolean;
4643
+ name: string | null;
4644
+ symbol: string;
4645
+ type: import("@package/databases").TokenType;
4646
+ verified: boolean;
4647
+ } & {
4648
+ price?: number | null | undefined;
4649
+ updatedAt?: number | null | undefined;
4650
+ priceSource?: string | null | undefined;
4651
+ isTokenWrapper?: boolean | undefined;
4652
+ tokenWrapperAddress?: string | undefined;
4653
+ })[];
4654
+ mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
4655
+ description: string;
4656
+ howToSteps: string[];
4657
+ depositUrl: string | undefined;
4658
+ explorerAddress: string | undefined;
4659
+ tags: string[];
4660
+ } | {
4661
+ id: string;
4662
+ chainId: number;
4663
+ type: string;
4664
+ identifier: string;
4665
+ name: string;
4666
+ description: string;
4667
+ howToSteps: string[];
4668
+ depositUrl: string | null;
4669
+ explorerAddress: string | null;
4670
+ status: import("@package/databases").Status;
4671
+ action: import("@package/databases").OpportunityAction;
4672
+ mainProtocolId: string | null;
4673
+ tvl: number;
4674
+ apr: number;
4675
+ maxApr: number | null;
4676
+ dailyRewards: number;
4677
+ tags: string[];
4678
+ lastCampaignCreatedAt: Date;
4679
+ manualOverrides: import("@package/databases").OpportunityManualOverride[];
4680
+ liveCampaigns: number;
4681
+ Protocols: {
4682
+ id: string;
4683
+ tags: string[];
4684
+ name: string;
4685
+ description: string;
4686
+ url: string;
4687
+ icon: string;
4688
+ }[];
4689
+ Tokens: {
4690
+ id: string;
4691
+ name: string | null;
4692
+ chainId: number;
4693
+ address: string;
4694
+ decimals: number;
4695
+ symbol: string;
4696
+ displaySymbol: string;
4697
+ icon: string;
4698
+ verified: boolean;
4699
+ isTest: boolean;
4700
+ type: import("@package/databases").TokenType;
4701
+ isNative: boolean;
4702
+ price: number | null;
4703
+ updatedAt: number | null;
4704
+ priceSource: string | null;
4705
+ }[];
4706
+ } | {
4628
4707
  distributionChain?: ({
4629
4708
  endOfDisputePeriod: number;
4630
4709
  icon: string;
@@ -4744,85 +4823,6 @@ export declare const v4: Elysia<"/v4", {
4744
4823
  startTimestamp: number;
4745
4824
  subType: number | null;
4746
4825
  type: string;
4747
- } | {
4748
- id: string;
4749
- chainId: number;
4750
- type: string;
4751
- identifier: string;
4752
- name: string;
4753
- status: "LIVE" | "PAST" | "SOON";
4754
- action: any;
4755
- tokens: ({
4756
- address: string;
4757
- chainId: number;
4758
- decimals: number;
4759
- icon: string;
4760
- id: string;
4761
- isNative: boolean;
4762
- isTest: boolean;
4763
- name: string | null;
4764
- symbol: string;
4765
- type: import("@package/databases").TokenType;
4766
- verified: boolean;
4767
- } & {
4768
- price?: number | null | undefined;
4769
- updatedAt?: number | null | undefined;
4770
- priceSource?: string | null | undefined;
4771
- isTokenWrapper?: boolean | undefined;
4772
- tokenWrapperAddress?: string | undefined;
4773
- })[];
4774
- mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
4775
- description: string;
4776
- howToSteps: string[];
4777
- depositUrl: string | undefined;
4778
- explorerAddress: string | undefined;
4779
- tags: string[];
4780
- } | {
4781
- id: string;
4782
- chainId: number;
4783
- type: string;
4784
- identifier: string;
4785
- name: string;
4786
- description: string;
4787
- howToSteps: string[];
4788
- depositUrl: string | null;
4789
- explorerAddress: string | null;
4790
- status: import("@package/databases").Status;
4791
- action: import("@package/databases").OpportunityAction;
4792
- mainProtocolId: string | null;
4793
- tvl: number;
4794
- apr: number;
4795
- maxApr: number | null;
4796
- dailyRewards: number;
4797
- tags: string[];
4798
- lastCampaignCreatedAt: Date;
4799
- manualOverrides: import("@package/databases").OpportunityManualOverride[];
4800
- liveCampaigns: number;
4801
- Protocols: {
4802
- id: string;
4803
- tags: string[];
4804
- name: string;
4805
- description: string;
4806
- url: string;
4807
- icon: string;
4808
- }[];
4809
- Tokens: {
4810
- id: string;
4811
- name: string | null;
4812
- chainId: number;
4813
- address: string;
4814
- decimals: number;
4815
- symbol: string;
4816
- displaySymbol: string;
4817
- icon: string;
4818
- verified: boolean;
4819
- isTest: boolean;
4820
- type: import("@package/databases").TokenType;
4821
- isNative: boolean;
4822
- price: number | null;
4823
- updatedAt: number | null;
4824
- priceSource: string | null;
4825
- }[];
4826
4826
  };
4827
4827
  422: {
4828
4828
  type: "validation";
@@ -4962,6 +4962,85 @@ export declare const v4: Elysia<"/v4", {
4962
4962
  };
4963
4963
  response: {
4964
4964
  200: {
4965
+ id: string;
4966
+ chainId: number;
4967
+ type: string;
4968
+ identifier: string;
4969
+ name: string;
4970
+ status: "LIVE" | "PAST" | "SOON";
4971
+ action: any;
4972
+ tokens: ({
4973
+ address: string;
4974
+ chainId: number;
4975
+ decimals: number;
4976
+ icon: string;
4977
+ id: string;
4978
+ isNative: boolean;
4979
+ isTest: boolean;
4980
+ name: string | null;
4981
+ symbol: string;
4982
+ type: import("@package/databases").TokenType;
4983
+ verified: boolean;
4984
+ } & {
4985
+ price?: number | null | undefined;
4986
+ updatedAt?: number | null | undefined;
4987
+ priceSource?: string | null | undefined;
4988
+ isTokenWrapper?: boolean | undefined;
4989
+ tokenWrapperAddress?: string | undefined;
4990
+ })[];
4991
+ mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
4992
+ description: string;
4993
+ howToSteps: string[];
4994
+ depositUrl: string | undefined;
4995
+ explorerAddress: string | undefined;
4996
+ tags: string[];
4997
+ } | {
4998
+ id: string;
4999
+ chainId: number;
5000
+ type: string;
5001
+ identifier: string;
5002
+ name: string;
5003
+ description: string;
5004
+ howToSteps: string[];
5005
+ depositUrl: string | null;
5006
+ explorerAddress: string | null;
5007
+ status: import("@package/databases").Status;
5008
+ action: import("@package/databases").OpportunityAction;
5009
+ mainProtocolId: string | null;
5010
+ tvl: number;
5011
+ apr: number;
5012
+ maxApr: number | null;
5013
+ dailyRewards: number;
5014
+ tags: string[];
5015
+ lastCampaignCreatedAt: Date;
5016
+ manualOverrides: import("@package/databases").OpportunityManualOverride[];
5017
+ liveCampaigns: number;
5018
+ Protocols: {
5019
+ id: string;
5020
+ tags: string[];
5021
+ name: string;
5022
+ description: string;
5023
+ url: string;
5024
+ icon: string;
5025
+ }[];
5026
+ Tokens: {
5027
+ id: string;
5028
+ name: string | null;
5029
+ chainId: number;
5030
+ address: string;
5031
+ decimals: number;
5032
+ symbol: string;
5033
+ displaySymbol: string;
5034
+ icon: string;
5035
+ verified: boolean;
5036
+ isTest: boolean;
5037
+ type: import("@package/databases").TokenType;
5038
+ isNative: boolean;
5039
+ price: number | null;
5040
+ updatedAt: number | null;
5041
+ priceSource: string | null;
5042
+ }[];
5043
+ } | {
4965
5044
  distributionChain?: ({
4966
5045
  endOfDisputePeriod: number;
4967
5046
  icon: string;
@@ -5081,85 +5160,6 @@ export declare const v4: Elysia<"/v4", {
5081
5160
  startTimestamp: number;
5082
5161
  subType: number | null;
5083
5162
  type: string;
5084
- } | {
5085
- id: string;
5086
- chainId: number;
5087
- type: string;
5088
- identifier: string;
5089
- name: string;
5090
- status: "LIVE" | "PAST" | "SOON";
5091
- action: any;
5092
- tokens: ({
5093
- address: string;
5094
- chainId: number;
5095
- decimals: number;
5096
- icon: string;
5097
- id: string;
5098
- isNative: boolean;
5099
- isTest: boolean;
5100
- name: string | null;
5101
- symbol: string;
5102
- type: import("@package/databases").TokenType;
5103
- verified: boolean;
5104
- } & {
5105
- price?: number | null | undefined;
5106
- updatedAt?: number | null | undefined;
5107
- priceSource?: string | null | undefined;
5108
- isTokenWrapper?: boolean | undefined;
5109
- tokenWrapperAddress?: string | undefined;
5110
- })[];
5111
- mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
5112
- description: string;
5113
- howToSteps: string[];
5114
- depositUrl: string | undefined;
5115
- explorerAddress: string | undefined;
5116
- tags: string[];
5117
- } | {
5118
- id: string;
5119
- chainId: number;
5120
- type: string;
5121
- identifier: string;
5122
- name: string;
5123
- description: string;
5124
- howToSteps: string[];
5125
- depositUrl: string | null;
5126
- explorerAddress: string | null;
5127
- status: import("@package/databases").Status;
5128
- action: import("@package/databases").OpportunityAction;
5129
- mainProtocolId: string | null;
5130
- tvl: number;
5131
- apr: number;
5132
- maxApr: number | null;
5133
- dailyRewards: number;
5134
- tags: string[];
5135
- lastCampaignCreatedAt: Date;
5136
- manualOverrides: import("@package/databases").OpportunityManualOverride[];
5137
- liveCampaigns: number;
5138
- Protocols: {
5139
- id: string;
5140
- tags: string[];
5141
- name: string;
5142
- description: string;
5143
- url: string;
5144
- icon: string;
5145
- }[];
5146
- Tokens: {
5147
- id: string;
5148
- name: string | null;
5149
- chainId: number;
5150
- address: string;
5151
- decimals: number;
5152
- symbol: string;
5153
- displaySymbol: string;
5154
- icon: string;
5155
- verified: boolean;
5156
- isTest: boolean;
5157
- type: import("@package/databases").TokenType;
5158
- isNative: boolean;
5159
- price: number | null;
5160
- updatedAt: number | null;
5161
- priceSource: string | null;
5162
- }[];
5163
5163
  };
5164
5164
  422: {
5165
5165
  type: "validation";
@@ -5190,6 +5190,85 @@ export declare const v4: Elysia<"/v4", {
5190
5190
  };
5191
5191
  response: {
5192
5192
  200: {
5193
+ id: string;
5194
+ chainId: number;
5195
+ type: string;
5196
+ identifier: string;
5197
+ name: string;
5198
+ status: "LIVE" | "PAST" | "SOON";
5199
+ action: any;
5200
+ tokens: ({
5201
+ address: string;
5202
+ chainId: number;
5203
+ decimals: number;
5204
+ icon: string;
5205
+ id: string;
5206
+ isNative: boolean;
5207
+ isTest: boolean;
5208
+ name: string | null;
5209
+ symbol: string;
5210
+ type: import("@package/databases").TokenType;
5211
+ verified: boolean;
5212
+ } & {
5213
+ price?: number | null | undefined;
5214
+ updatedAt?: number | null | undefined;
5215
+ priceSource?: string | null | undefined;
5216
+ isTokenWrapper?: boolean | undefined;
5217
+ tokenWrapperAddress?: string | undefined;
5218
+ })[];
5219
+ mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
5220
+ description: string;
5221
+ howToSteps: string[];
5222
+ depositUrl: string | undefined;
5223
+ explorerAddress: string | undefined;
5224
+ tags: string[];
5225
+ } | {
5226
+ id: string;
5227
+ chainId: number;
5228
+ type: string;
5229
+ identifier: string;
5230
+ name: string;
5231
+ description: string;
5232
+ howToSteps: string[];
5233
+ depositUrl: string | null;
5234
+ explorerAddress: string | null;
5235
+ status: import("@package/databases").Status;
5236
+ action: import("@package/databases").OpportunityAction;
5237
+ mainProtocolId: string | null;
5238
+ tvl: number;
5239
+ apr: number;
5240
+ maxApr: number | null;
5241
+ dailyRewards: number;
5242
+ tags: string[];
5243
+ lastCampaignCreatedAt: Date;
5244
+ manualOverrides: import("@package/databases").OpportunityManualOverride[];
5245
+ liveCampaigns: number;
5246
+ Protocols: {
5247
+ id: string;
5248
+ tags: string[];
5249
+ name: string;
5250
+ description: string;
5251
+ url: string;
5252
+ icon: string;
5253
+ }[];
5254
+ Tokens: {
5255
+ id: string;
5256
+ name: string | null;
5257
+ chainId: number;
5258
+ address: string;
5259
+ decimals: number;
5260
+ symbol: string;
5261
+ displaySymbol: string;
5262
+ icon: string;
5263
+ verified: boolean;
5264
+ isTest: boolean;
5265
+ type: import("@package/databases").TokenType;
5266
+ isNative: boolean;
5267
+ price: number | null;
5268
+ updatedAt: number | null;
5269
+ priceSource: string | null;
5270
+ }[];
5271
+ } | {
5193
5272
  distributionChain?: ({
5194
5273
  endOfDisputePeriod: number;
5195
5274
  icon: string;
@@ -5309,85 +5388,6 @@ export declare const v4: Elysia<"/v4", {
5309
5388
  startTimestamp: number;
5310
5389
  subType: number | null;
5311
5390
  type: string;
5312
- } | {
5313
- id: string;
5314
- chainId: number;
5315
- type: string;
5316
- identifier: string;
5317
- name: string;
5318
- status: "LIVE" | "PAST" | "SOON";
5319
- action: any;
5320
- tokens: ({
5321
- address: string;
5322
- chainId: number;
5323
- decimals: number;
5324
- icon: string;
5325
- id: string;
5326
- isNative: boolean;
5327
- isTest: boolean;
5328
- name: string | null;
5329
- symbol: string;
5330
- type: import("@package/databases").TokenType;
5331
- verified: boolean;
5332
- } & {
5333
- price?: number | null | undefined;
5334
- updatedAt?: number | null | undefined;
5335
- priceSource?: string | null | undefined;
5336
- isTokenWrapper?: boolean | undefined;
5337
- tokenWrapperAddress?: string | undefined;
5338
- })[];
5339
- mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "fluidvault" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
5340
- description: string;
5341
- howToSteps: string[];
5342
- depositUrl: string | undefined;
5343
- explorerAddress: string | undefined;
5344
- tags: string[];
5345
- } | {
5346
- id: string;
5347
- chainId: number;
5348
- type: string;
5349
- identifier: string;
5350
- name: string;
5351
- description: string;
5352
- howToSteps: string[];
5353
- depositUrl: string | null;
5354
- explorerAddress: string | null;
5355
- status: import("@package/databases").Status;
5356
- action: import("@package/databases").OpportunityAction;
5357
- mainProtocolId: string | null;
5358
- tvl: number;
5359
- apr: number;
5360
- maxApr: number | null;
5361
- dailyRewards: number;
5362
- tags: string[];
5363
- lastCampaignCreatedAt: Date;
5364
- manualOverrides: import("@package/databases").OpportunityManualOverride[];
5365
- liveCampaigns: number;
5366
- Protocols: {
5367
- id: string;
5368
- tags: string[];
5369
- name: string;
5370
- description: string;
5371
- url: string;
5372
- icon: string;
5373
- }[];
5374
- Tokens: {
5375
- id: string;
5376
- name: string | null;
5377
- chainId: number;
5378
- address: string;
5379
- decimals: number;
5380
- symbol: string;
5381
- displaySymbol: string;
5382
- icon: string;
5383
- verified: boolean;
5384
- isTest: boolean;
5385
- type: import("@package/databases").TokenType;
5386
- isNative: boolean;
5387
- price: number | null;
5388
- updatedAt: number | null;
5389
- priceSource: string | null;
5390
- }[];
5391
5391
  };
5392
5392
  422: {
5393
5393
  type: "validation";
@@ -6977,50 +6977,6 @@ export declare const v4: Elysia<"/v4", {
6977
6977
  } & {
6978
6978
  v4: {
6979
6979
  prices: {
6980
- ":addressOrSymbol": {
6981
- get: {
6982
- body: unknown;
6983
- params: {
6984
- addressOrSymbol: string;
6985
- };
6986
- query: unknown;
6987
- headers: unknown;
6988
- response: {
6989
- 200: number;
6990
- 422: {
6991
- type: "validation";
6992
- on: string;
6993
- summary?: string | undefined;
6994
- message?: string | undefined;
6995
- found?: unknown;
6996
- property?: string | undefined;
6997
- expected?: string | undefined;
6998
- };
6999
- };
7000
- };
7001
- };
7002
- } & {
7003
- sources: {
7004
- get: {
7005
- body: unknown;
7006
- params: {};
7007
- query: unknown;
7008
- headers: unknown;
7009
- response: {
7010
- 200: {
7011
- id: number;
7012
- type: import("@package/databases").PriceSourceType;
7013
- protected: boolean;
7014
- identifier: string;
7015
- method: import("@package/databases").PriceSourceMethod;
7016
- args: import("@prisma/client/runtime/client").JsonValue;
7017
- value: number | null;
7018
- updatedAt: number | null;
7019
- }[];
7020
- };
7021
- };
7022
- };
7023
- } & {
7024
6980
  sources: {
7025
6981
  ":addressOrSymbol": {
7026
6982
  get: {
@@ -7054,12 +7010,32 @@ export declare const v4: Elysia<"/v4", {
7054
7010
  };
7055
7011
  };
7056
7012
  };
7013
+ } & {
7014
+ sources: {
7015
+ get: {
7016
+ body: unknown;
7017
+ params: {};
7018
+ query: unknown;
7019
+ headers: unknown;
7020
+ response: {
7021
+ 200: {
7022
+ id: number;
7023
+ type: import("@package/databases").PriceSourceType;
7024
+ protected: boolean;
7025
+ identifier: string;
7026
+ method: import("@package/databases").PriceSourceMethod;
7027
+ args: import("@prisma/client/runtime/client").JsonValue;
7028
+ value: number | null;
7029
+ updatedAt: number | null;
7030
+ }[];
7031
+ };
7032
+ };
7033
+ };
7057
7034
  } & {
7058
7035
  sources: {
7059
7036
  post: {
7060
7037
  body: {
7061
- identifier: string;
7062
- type: "ADDRESS" | "SYMBOL";
7038
+ addressOrSymbol: string;
7063
7039
  method: "COINGECKO" | "CONSTANT" | "DEFILLAMA" | "DEXSCREENER" | "EQUAL_TO" | "ERC4626" | "INDEXCOOP" | "ONCHAIN_CALL" | "UNISWAP_V2";
7064
7040
  args: {};
7065
7041
  protected?: boolean | undefined;
@@ -7126,8 +7102,7 @@ export declare const v4: Elysia<"/v4", {
7126
7102
  ":addressOrSymbol": {
7127
7103
  patch: {
7128
7104
  body: {
7129
- identifier?: string | undefined;
7130
- type?: "ADDRESS" | "SYMBOL" | undefined;
7105
+ addressOrSymbol?: string | undefined;
7131
7106
  method?: "COINGECKO" | "CONSTANT" | "DEFILLAMA" | "DEXSCREENER" | "EQUAL_TO" | "ERC4626" | "INDEXCOOP" | "ONCHAIN_CALL" | "UNISWAP_V2" | undefined;
7132
7107
  args?: {} | undefined;
7133
7108
  protected?: boolean | undefined;
@@ -7165,43 +7140,66 @@ export declare const v4: Elysia<"/v4", {
7165
7140
  };
7166
7141
  } & {
7167
7142
  sources: {
7168
- symbol: {
7169
- ":addressOrSymbol": {
7170
- delete: {
7171
- body: unknown;
7172
- params: {
7173
- addressOrSymbol: string;
7174
- } & {};
7175
- query: unknown;
7176
- headers: {
7177
- authorization: string;
7143
+ ":addressOrSymbol": {
7144
+ delete: {
7145
+ body: unknown;
7146
+ params: {
7147
+ addressOrSymbol: string;
7148
+ } & {};
7149
+ query: unknown;
7150
+ headers: {
7151
+ authorization: string;
7152
+ };
7153
+ response: {
7154
+ 200: {
7155
+ id: number;
7156
+ type: import("@package/databases").PriceSourceType;
7157
+ protected: boolean;
7158
+ identifier: string;
7159
+ method: import("@package/databases").PriceSourceMethod;
7160
+ args: import("@prisma/client/runtime/client").JsonValue;
7161
+ value: number | null;
7162
+ updatedAt: number | null;
7178
7163
  };
7179
- response: {
7180
- 200: {
7181
- id: number;
7182
- type: import("@package/databases").PriceSourceType;
7183
- protected: boolean;
7184
- identifier: string;
7185
- method: import("@package/databases").PriceSourceMethod;
7186
- args: import("@prisma/client/runtime/client").JsonValue;
7187
- value: number | null;
7188
- updatedAt: number | null;
7189
- };
7190
- 422: {
7191
- type: "validation";
7192
- on: string;
7193
- summary?: string | undefined;
7194
- message?: string | undefined;
7195
- found?: unknown;
7196
- property?: string | undefined;
7197
- expected?: string | undefined;
7198
- };
7164
+ 422: {
7165
+ type: "validation";
7166
+ on: string;
7167
+ summary?: string | undefined;
7168
+ message?: string | undefined;
7169
+ found?: unknown;
7170
+ property?: string | undefined;
7171
+ expected?: string | undefined;
7199
7172
  };
7200
7173
  };
7201
7174
  };
7202
7175
  };
7203
7176
  };
7204
7177
  };
7178
+ } & {
7179
+ prices: {
7180
+ ":addressOrSymbol": {
7181
+ get: {
7182
+ body: unknown;
7183
+ params: {
7184
+ addressOrSymbol: string;
7185
+ };
7186
+ query: unknown;
7187
+ headers: unknown;
7188
+ response: {
7189
+ 200: number;
7190
+ 422: {
7191
+ type: "validation";
7192
+ on: string;
7193
+ summary?: string | undefined;
7194
+ message?: string | undefined;
7195
+ found?: unknown;
7196
+ property?: string | undefined;
7197
+ expected?: string | undefined;
7198
+ };
7199
+ };
7200
+ };
7201
+ };
7202
+ };
7205
7203
  };
7206
7204
  } & {
7207
7205
  v4: {