import { TAddress } from '../../models/TAddress'; import { TAccount } from '../../models/TAccount'; import { ClientEventsStream, TClientEventsStreamData } from '../../clients/ClientEventsStream'; import { ContractBase } from '../../contracts/ContractBase'; import { TxWriter } from '../../txs/TxWriter'; import { ITxLogItem } from '../../txs/receipt/ITxLogItem'; import { Web3Client } from '../../clients/Web3Client'; import { IBlockchainExplorer } from '../../explorer/IBlockchainExplorer'; import { SubjectStream } from '../../class/SubjectStream'; import type { TAbiItem } from '../../types/TAbi'; import type { TEth } from '../../models/TEth'; import type { TOverrideReturns } from '../../utils/types'; export declare class ERC20PresetMinterPauser extends ContractBase { address: TEth.Address; client: Web3Client; explorer: IBlockchainExplorer; constructor(address?: TEth.Address, client?: Web3Client, explorer?: IBlockchainExplorer); Types: TERC20PresetMinterPauserTypes; $meta: { class: string; }; $constructor(deployer: TSender, name: string, symbol: string): Promise; DEFAULT_ADMIN_ROLE(): Promise; MINTER_ROLE(): Promise; PAUSER_ROLE(): Promise; allowance(owner: TAddress, spender: TAddress): Promise; approve(sender: TSender, spender: TAddress, amount: bigint): Promise; balanceOf(account: TAddress): Promise; burn(sender: TSender, amount: bigint): Promise; burnFrom(sender: TSender, account: TAddress, amount: bigint): Promise; decimals(): Promise; decreaseAllowance(sender: TSender, spender: TAddress, subtractedValue: bigint): Promise; getRoleAdmin(role: TEth.Hex): Promise; getRoleMember(role: TEth.Hex, index: bigint): Promise; getRoleMemberCount(role: TEth.Hex): Promise; grantRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise; hasRole(role: TEth.Hex, account: TAddress): Promise; increaseAllowance(sender: TSender, spender: TAddress, addedValue: bigint): Promise; mint(sender: TSender, to: TAddress, amount: bigint): Promise; name(): Promise; pause(sender: TSender): Promise; paused(): Promise; renounceRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise; revokeRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise; supportsInterface(interfaceId: TEth.Hex): Promise; symbol(): Promise; totalSupply(): Promise; transfer(sender: TSender, to: TAddress, amount: bigint): Promise; transferFrom(sender: TSender, from: TAddress, to: TAddress, amount: bigint): Promise; unpause(sender: TSender): Promise; $call(): IERC20PresetMinterPauserTxCaller; $signed(): TOverrideReturns>; $data(): IERC20PresetMinterPauserTxData; $gas(): TOverrideReturns>; onTransaction(method: TMethod, options: Parameters[0]): SubjectStream<{ tx: TEth.Tx; block: TEth.Block; calldata: { method: TMethod; arguments: TERC20PresetMinterPauserTypes['Methods'][TMethod]['arguments']; }; }>; onLog(event: keyof TEvents, cb?: (event: TClientEventsStreamData) => void): ClientEventsStream; getPastLogs(events: TEventName[], options?: TEventLogOptions>): Promise, TEventName>[]>; getPastLogs(event: TEventName, options?: TEventLogOptions>): Promise, TEventName>[]>; onApproval(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onPaused(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onRoleAdminChanged(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onRoleGranted(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onRoleRevoked(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onTransfer(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; onUnpaused(fn?: (event: TClientEventsStreamData>) => void): ClientEventsStream>>; extractLogsApproval(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsPaused(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsRoleAdminChanged(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsRoleGranted(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsRoleRevoked(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsTransfer(tx: TEth.TxReceipt): ITxLogItem>[]; extractLogsUnpaused(tx: TEth.TxReceipt): ITxLogItem>[]; getPastLogsApproval(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { owner?: TAddress; spender?: TAddress; }; }): Promise>[]>; getPastLogsPaused(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: {}; }): Promise>[]>; getPastLogsRoleAdminChanged(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { role?: TEth.Hex; previousAdminRole?: TEth.Hex; newAdminRole?: TEth.Hex; }; }): Promise>[]>; getPastLogsRoleGranted(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { role?: TEth.Hex; account?: TAddress; sender?: TAddress; }; }): Promise>[]>; getPastLogsRoleRevoked(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { role?: TEth.Hex; account?: TAddress; sender?: TAddress; }; }): Promise>[]>; getPastLogsTransfer(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: { from?: TAddress; to?: TAddress; }; }): Promise>[]>; getPastLogsUnpaused(options?: { fromBlock?: number | Date; toBlock?: number | Date; params?: {}; }): Promise>[]>; abi: TAbiItem[]; } type TSender = TAccount & { value?: string | number | bigint; }; type TEventLogOptions = { fromBlock?: number | Date; toBlock?: number | Date; params?: TParams; }; export type TERC20PresetMinterPauserTypes = { Events: { Approval: { outputParams: { owner: TAddress; spender: TAddress; value: bigint; }; outputArgs: [owner: TAddress, spender: TAddress, value: bigint]; }; Paused: { outputParams: { account: TAddress; }; outputArgs: [account: TAddress]; }; RoleAdminChanged: { outputParams: { role: TEth.Hex; previousAdminRole: TEth.Hex; newAdminRole: TEth.Hex; }; outputArgs: [role: TEth.Hex, previousAdminRole: TEth.Hex, newAdminRole: TEth.Hex]; }; RoleGranted: { outputParams: { role: TEth.Hex; account: TAddress; _sender: TAddress; }; outputArgs: [role: TEth.Hex, account: TAddress, _sender: TAddress]; }; RoleRevoked: { outputParams: { role: TEth.Hex; account: TAddress; _sender: TAddress; }; outputArgs: [role: TEth.Hex, account: TAddress, _sender: TAddress]; }; Transfer: { outputParams: { from: TAddress; to: TAddress; value: bigint; }; outputArgs: [from: TAddress, to: TAddress, value: bigint]; }; Unpaused: { outputParams: { account: TAddress; }; outputArgs: [account: TAddress]; }; }; Methods: { DEFAULT_ADMIN_ROLE: { method: "DEFAULT_ADMIN_ROLE"; arguments: []; }; MINTER_ROLE: { method: "MINTER_ROLE"; arguments: []; }; PAUSER_ROLE: { method: "PAUSER_ROLE"; arguments: []; }; allowance: { method: "allowance"; arguments: [owner: TAddress, spender: TAddress]; }; approve: { method: "approve"; arguments: [spender: TAddress, amount: bigint]; }; balanceOf: { method: "balanceOf"; arguments: [account: TAddress]; }; burn: { method: "burn"; arguments: [amount: bigint]; }; burnFrom: { method: "burnFrom"; arguments: [account: TAddress, amount: bigint]; }; decimals: { method: "decimals"; arguments: []; }; decreaseAllowance: { method: "decreaseAllowance"; arguments: [spender: TAddress, subtractedValue: bigint]; }; getRoleAdmin: { method: "getRoleAdmin"; arguments: [role: TEth.Hex]; }; getRoleMember: { method: "getRoleMember"; arguments: [role: TEth.Hex, index: bigint]; }; getRoleMemberCount: { method: "getRoleMemberCount"; arguments: [role: TEth.Hex]; }; grantRole: { method: "grantRole"; arguments: [role: TEth.Hex, account: TAddress]; }; hasRole: { method: "hasRole"; arguments: [role: TEth.Hex, account: TAddress]; }; increaseAllowance: { method: "increaseAllowance"; arguments: [spender: TAddress, addedValue: bigint]; }; mint: { method: "mint"; arguments: [to: TAddress, amount: bigint]; }; name: { method: "name"; arguments: []; }; pause: { method: "pause"; arguments: []; }; paused: { method: "paused"; arguments: []; }; renounceRole: { method: "renounceRole"; arguments: [role: TEth.Hex, account: TAddress]; }; revokeRole: { method: "revokeRole"; arguments: [role: TEth.Hex, account: TAddress]; }; supportsInterface: { method: "supportsInterface"; arguments: [interfaceId: TEth.Hex]; }; symbol: { method: "symbol"; arguments: []; }; totalSupply: { method: "totalSupply"; arguments: []; }; transfer: { method: "transfer"; arguments: [to: TAddress, amount: bigint]; }; transferFrom: { method: "transferFrom"; arguments: [from: TAddress, to: TAddress, amount: bigint]; }; unpause: { method: "unpause"; arguments: []; }; }; }; interface IERC20PresetMinterPauserTxCaller { approve(sender: TSender, spender: TAddress, amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; burn(sender: TSender, amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; burnFrom(sender: TSender, account: TAddress, amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; decreaseAllowance(sender: TSender, spender: TAddress, subtractedValue: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; grantRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; increaseAllowance(sender: TSender, spender: TAddress, addedValue: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; mint(sender: TSender, to: TAddress, amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; pause(sender: TSender): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; renounceRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; revokeRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; transfer(sender: TSender, to: TAddress, amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; transferFrom(sender: TSender, from: TAddress, to: TAddress, amount: bigint): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; unpause(sender: TSender): Promise<{ error?: Error & { data?: { type: string; params: any; }; }; result?: any; }>; } interface IERC20PresetMinterPauserTxData { approve(sender: TSender, spender: TAddress, amount: bigint): Promise; burn(sender: TSender, amount: bigint): Promise; burnFrom(sender: TSender, account: TAddress, amount: bigint): Promise; decreaseAllowance(sender: TSender, spender: TAddress, subtractedValue: bigint): Promise; grantRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise; increaseAllowance(sender: TSender, spender: TAddress, addedValue: bigint): Promise; mint(sender: TSender, to: TAddress, amount: bigint): Promise; pause(sender: TSender): Promise; renounceRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise; revokeRole(sender: TSender, role: TEth.Hex, account: TAddress): Promise; transfer(sender: TSender, to: TAddress, amount: bigint): Promise; transferFrom(sender: TSender, from: TAddress, to: TAddress, amount: bigint): Promise; unpause(sender: TSender): Promise; } type TEvents = TERC20PresetMinterPauserTypes['Events']; type TEventParams = Partial; type TEventArguments = Partial; export {};