The frontend for the project formerly known as signet, now known as beignet.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

types.ts 2.7 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. // eslint-disable-next-line no-shadow
  2. export enum Privileges {
  3. None = -1,
  4. SuperUser,
  5. AdminPlus,
  6. Admin
  7. }
  8. export interface Contribution {
  9. createdAt: string;
  10. amount: number;
  11. rewardFundID: number;
  12. transactionID: string;
  13. wallet: string;
  14. }
  15. interface Contributions {
  16. list: Contribution[];
  17. dates: string[];
  18. total: number;
  19. }
  20. export interface RewardFund {
  21. id: number;
  22. asset: string;
  23. wallet: string;
  24. memo: string;
  25. amountGoal: number;
  26. minContribution: number;
  27. contributions: Contribution[] | null;
  28. title: string;
  29. description: string;
  30. }
  31. export interface Queue {
  32. id: number;
  33. name: string;
  34. }
  35. export interface CreateQueueRequest {
  36. name: string;
  37. }
  38. export interface CreateQueueResponse {
  39. id: number;
  40. }
  41. export interface GetQueuesResponse {
  42. queues: Queue[];
  43. }
  44. export interface SuccessResponse {
  45. success: boolean;
  46. }
  47. export interface GetRewardFundRequest {
  48. id: number;
  49. consolidateContributions: boolean;
  50. }
  51. export interface Bonus {
  52. goal?: number;
  53. percent?: number;
  54. }
  55. export interface CreateRewardFundRequest {
  56. asset: string;
  57. fundWallet: string;
  58. sellingWallet: string;
  59. issuerWallet: string;
  60. memo: string;
  61. minContribution: number;
  62. title: string;
  63. description: string;
  64. queueID?: number | null;
  65. bonuses: Bonus[];
  66. }
  67. export interface FundInfo {
  68. id: number;
  69. asset: string;
  70. fundWallet: string;
  71. sellingWallet: string;
  72. issuerWallet: string;
  73. memo: string;
  74. price: number;
  75. amountAvailable: number;
  76. amountGoal: number;
  77. minContribution: number;
  78. title: string;
  79. description: string;
  80. bonuses: Bonus[];
  81. queueID: number | null;
  82. }
  83. interface Total {
  84. amountHeld: number;
  85. }
  86. export interface GetRewardFundResponse {
  87. fundInfo: FundInfo;
  88. contributions: Contributions;
  89. total: Total;
  90. }
  91. export interface GetBalanceRequest {
  92. secretKey: string;
  93. }
  94. export interface GetBalanceResponse {
  95. balance: number;
  96. }
  97. export interface ContributeRequest {
  98. privateKey: string;
  99. amount: number;
  100. rewardFund: number;
  101. }
  102. export interface AuthenticationRequest {
  103. username: string;
  104. password: string;
  105. }
  106. export interface LoginResponse {
  107. token: string | null;
  108. }
  109. export interface GetQueueMembersRequest {
  110. id: number;
  111. }
  112. export interface GetQueueMembersResponse {
  113. members: RewardFund[];
  114. }
  115. export interface GetRewardFundsRequest {
  116. offset: number;
  117. }
  118. export interface GetRewardFundsResponse {
  119. rewardFunds: FundInfo[];
  120. total: number;
  121. }
  122. export interface Claims {
  123. username: string;
  124. privileges: Privileges;
  125. exp: number;
  126. }
  127. export interface GetContributionsRequest {
  128. id: number;
  129. offset: number;
  130. forDate: string | undefined;
  131. consolidateContributions: boolean;
  132. }
  133. export type GetContributionsResponse = Contributions;
  134. export interface CloseRewardFundRequest {
  135. id: number;
  136. close: boolean;
  137. }