@intersect.mbo/govtool-delegation-pillar
Version:
Delegation Pillar of the GovTool project
18 lines (17 loc) • 900 B
TypeScript
export type TransactionTypeWithoutResource = 'registerAsDrep' | 'registerAsDirectVoter' | 'retireAsDrep' | 'retireAsDirectVoter' | 'updateMetaData';
export type TransactionTypeWithResource = 'delegate';
export type TransactionType = TransactionTypeWithoutResource | TransactionTypeWithResource;
export type TransactionStateWithoutResource = {
type: TransactionTypeWithoutResource;
transactionHash: string;
time: string;
resourceId?: never;
};
export type TransactionStateWithResource = {
type: TransactionTypeWithResource;
transactionHash: string;
time: string;
resourceId: string;
};
export type TransactionState = TransactionStateWithResource | TransactionStateWithoutResource;
export type PendingTransaction = Record<TransactionTypeWithoutResource, TransactionStateWithoutResource | null> & Record<TransactionTypeWithResource, TransactionStateWithResource | null>;