123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322 |
- import { ApiPromise } from "@polkadot/api";
- import { MemberId } from "@joystream/types/members";
- import {
- ProposalParameters,
- ProposalStatus,
- VotingResults,
- } from "@joystream/types/proposals";
- import { AccountId, Nominations } from "@polkadot/types/interfaces";
- import { Option } from "@polkadot/types/codec";
- import { StorageKey } from "@polkadot/types/primitive";
- export interface Api {
- query: any;
- rpc: any;
- derive: any;
- }
- export interface Status {
- now: number;
- block: Block;
- era: number;
- block: number;
- connecting: boolean;
- loading: string;
- council?: { stage: any; round: number; termEndsAt: number };
- durations: number[];
- issued: number;
- price: number;
- proposals: number;
- channels: number;
- categories: number;
- threads: number;
- posts: number;
- lastReward: number;
- startTime: number;
- }
- export interface IState {
- assets: string[];
- connecting: boolean;
- loading: string;
- processingTasks: number;
- fetching: string;
- providers: any[];
- queue: { key: string; action: any }[];
- status: Status;
- blocks: Block[];
- nominators: string[];
- validators: string[];
- stashes: string[];
- councils: Seat[][];
- channels: Channel[];
- categories: Category[];
- proposals: ProposalDetail[];
- posts: Post[];
- threads: Thread[];
- domain: string;
- proposalPosts: any[];
- handles: Handles;
- members: Member[];
- mints: any[];
- tokenomics?: Tokenomics;
- reports: { [key: string]: string };
- [key: string]: any;
- stars: { [key: string]: boolean };
- stakes?: { [key: string]: Stakes };
- rewardPoints?: RewardPoints;
- hideFooter: boolean;
- showStatus: boolean;
- }
- export interface RewardPoints {
- total: number;
- individual: { [account: string]: number };
- }
- export interface Stake {
- who: string;
- value: number;
- }
- export interface Stakes {
- total: number;
- own: number;
- others: Stake[];
- commission: number;
- }
- export interface Seat {
- member: string;
- handle?: string;
- id?: number;
- stake: number;
- backers: Backer[];
- }
- export interface Backer {
- member: string;
- stake: number;
- }
- export interface Council {
- round: number;
- last: string;
- }
- export interface Options {
- verbose: number;
- channel: boolean;
- council: boolean;
- forum: boolean;
- proposals: boolean;
- }
- export interface ProposalDetail {
- createdAt: number;
- finalizedAt: number;
- message: string;
- parameters: ProposalParameters;
- stage: any;
- result: string;
- executed?: { Executed: null } | { ExecutionFailed: { error: string } };
- id: number;
- title: string;
- description: any;
- votes: VotingResults;
- type: string;
- votesByAccount?: Vote[];
- author: string;
- authorId: number;
- detail?: any;
- }
- export interface Vote {
- vote: string;
- handle: string;
- }
- export type ProposalArray = number[];
- export interface ProposalPost {
- threadId: number;
- text: string;
- id: number;
- handle?: string;
- }
- export interface Proposals {
- current: number;
- last: number;
- active: ProposalArray;
- executing: ProposalArray;
- }
- export interface Channel {
- id: number;
- handle: string;
- title: string;
- description: string;
- avatar: string;
- banner: string;
- content: string;
- ownerId: number;
- accountId: string;
- publicationStatus: boolean;
- curation: string;
- createdAt: string;
- principal: number;
- }
- export interface Category {
- id: number;
- threadId: number;
- title: string;
- description: string;
- createdAt: number;
- deleted: boolean;
- archived: boolean;
- subcategories: number;
- unmoderatedThreads: number;
- moderatedThreads: number;
- position: number;
- moderatorId: string;
- }
- export interface Post {
- id: number;
- text: string;
- threadId: number;
- authorId: string;
- createdAt: { block: number; time: number };
- }
- export interface Thread {
- id: number;
- title: string;
- categoryId: number;
- nrInCategory: number;
- moderation: string;
- createdAt: string;
- authorId: string;
- }
- export interface Member {
- account: string;
- handle: string;
- id: number;
- registeredAt: number;
- about: string;
- }
- export interface Block {
- id: number;
- timestamp: number;
- duration: number;
- }
- export interface Summary {
- blocks: Block[];
- validators: number[];
- nominators: number[];
- }
- export type NominatorsEntries = [StorageKey, Option<Nominations>][];
- export interface ProviderStatus {
- [propName: string]: boolean;
- }
- export interface Handles {
- [key: string]: string;
- }
- export interface Tokenomics {
- price: string;
- totalIssuance: string;
- validators: { total_stake: string };
- burns: Burn[];
- exchanges: Exchange[];
- extecutedBurnsAmount: number;
- }
- export interface Burn {
- amount: number;
- blockHeight: number;
- date: string; // "2020-09-21T11:07:54.000Z"
- logTime: string; //"2020-09-21T11:08:54.091Z"
- }
- export interface Exchange {
- amount: number;
- amountUSD: number;
- blockHeight: number;
- date: string; // "2020-09-21T11:07:48.000Z"
- logTime: string; // "2020-09-21T11:08:48.552Z"
- price: number; // 0.000053676219442924057
- recipient: string; //"5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu"
- sender: string; // "5DACzSg65taZ2NRktUtzBjhLZr8H5T8rwNoZUng9gQV6ayqT"
- senderMemo: string; //"4Testing1337SendToBurnerAddressHopingItWorksOfc5D5PhZQNJzcJXVBxwJxZcsutjKPqUPydrvpu6HeiBfMaeKQu"
- status: string; // FINALIZED | PENDING
- xmrAddress: string; //"No address found"
- }
- export interface Event {
- text: string;
- date: number;
- category: {
- tag: string;
- color: string;
- };
- link: {
- url: string;
- text: string;
- };
- }
- export interface Transaction {
- id: number;
- block: number;
- from: string;
- to: string;
- amount: number;
- }
- export interface Burner {
- wallet: string,
- totalburned: number;
- }
- export interface Burner {
- wallet: string,
- totalburned: number;
- }
- export interface ValidatorApiResponse {
- pageSize: number;
- totalCount: number;
- startBlock: number;
- endBlock: number;
- startTime: string;
- endTime: string;
- startEra: number;
- endEra: number;
- totalBlocks: number;
- report: ValidatorReportLineItem[]
- }
- export interface ValidatorReportLineItem {
- id: number;
- stakeTotal: string;
- stakeOwn: string;
- points: number;
- rewards: number;
- commission: number;
- blocksCount: number;
- }
- export interface CalendarGroup {
- id: number;
- title: string;
- }
|