import { Response } from '../request'; import BaseController from '../base'; export interface AddressList { newAddressList: [string]; lastAddress: string; } export interface AddressResponse { isTransaction: number; endIndex: number; totalSize: number; addresses: Array; } export interface Addresses { index: number; address: string; } export interface AccountInfoResponse extends Response { data: AddressResponse; } export interface Address { (seed: string, index: number): string; } export default class UserAddress extends BaseController { private addressListPageSize; genAddress: Address; getAddressList: (seed: string) => Promise<{ newAddressList: string[]; lastAddress: string; }>; getAccountInfoByFirstAddress: (seed: string, firstAddress: string, currentPage?: number, isLockRepeat?: boolean | undefined) => Promise; saveAddress: (firstAddress: string, newAddress: string, index: number, seed: string) => Promise; repeatGetAccountInfoByFirstAddress: (seed: string, firstAddress: string, totalSize: number) => Promise; generateNewAddressAndSaveAddress: (seed: string, firstAddress: string, index: number, addressList?: string[]) => Promise; }