import { Address, ContractState, TestContractResult, ContractFactory, SubscribeOptions, EventSubscription, CallContractParams, CallContractResult, TestContractParams, ContractCreatedEvent, ContractDestroyedEvent, ContractInstance } from "@alephium/web3";
export declare namespace MathTestTypes {
    type State = Omit<ContractState<any>, "fields">;
}
declare class Factory extends ContractFactory<MathTestInstance, {}> {
    at(address: string): MathTestInstance;
    testNormalizeAmountMethod(params: Omit<TestContractParams<never, {
        amount: bigint;
        decimals: bigint;
    }>, "initialFields">): Promise<TestContractResult<bigint>>;
    testDeNormalizeAmountMethod(params: Omit<TestContractParams<never, {
        amount: bigint;
        decimals: bigint;
    }>, "initialFields">): Promise<TestContractResult<bigint>>;
}
export declare const MathTest: Factory;
export declare class MathTestInstance extends ContractInstance {
    constructor(address: Address);
    fetchState(): Promise<MathTestTypes.State>;
    subscribeContractCreatedEvent(options: SubscribeOptions<ContractCreatedEvent>, fromCount?: number): EventSubscription;
    subscribeContractDestroyedEvent(options: SubscribeOptions<ContractDestroyedEvent>, fromCount?: number): EventSubscription;
    subscribeAllEvents(options: SubscribeOptions<ContractCreatedEvent | ContractDestroyedEvent>, fromCount?: number): EventSubscription;
    callNormalizeAmountMethod(params: CallContractParams<{
        amount: bigint;
        decimals: bigint;
    }>): Promise<CallContractResult<bigint>>;
    callDeNormalizeAmountMethod(params: CallContractParams<{
        amount: bigint;
        decimals: bigint;
    }>): Promise<CallContractResult<bigint>>;
}
export {};
