import { GenericDAO } from "./GenericDAO"; import { IindexEntry, SimpleTxInput, SimpleUdEntryForWallet, SindexEntry } from "../../../indexer"; export interface DividendEntry { pub: string; member: boolean; availables: number[]; consumed: number[]; consumedUDs: { dividendNumber: number; txHash: string; txCreatedOn: string; txLocktime: number; dividend: { amount: number; base: number; }; }[]; dividends: { amount: number; base: number; }[]; } export interface UDSource { consumed: boolean; pos: number; amount: number; base: number; } export interface DividendDAO extends GenericDAO { setMember(member: boolean, pub: string): Promise; produceDividend(blockNumber: number, dividend: number, unitbase: number, local_iindex: IindexEntry[]): Promise; getUDSources(pub: string): Promise; findUdSourceByIdentifierPosAmountBase(identifier: string, pos: number, amount: number, base: number): Promise; getUDSource(identifier: string, pos: number): Promise; createMember(pub: string): Promise; consume(filter: SindexEntry[]): Promise; deleteMember(pub: string): Promise; getWrittenOnUDs(number: number): Promise; revertUDs(number: number): Promise<{ createdUDsDestroyedByRevert: SimpleUdEntryForWallet[]; consumedUDsRecoveredByRevert: SimpleUdEntryForWallet[]; }>; findForDump(criterion: any): Promise; trimConsumedUDs(belowNumber: number): Promise; listAll(): Promise; }