import type { Promisable } from '@ariestools/sdk';
import type { TransactionFeesBigInt, TransactionFeesHex } from '@xyo-network/xl1-protocol/protocol-lib';
import { AttoXL1 } from '@xyo-network/xl1-protocol/protocol-lib';
import type { TransactionFeesInstance } from '../protocol-sdk/index.js';
/** Wrapper for transaction fee fields (base, gasLimit, gasPrice, priority) with validation. */
export declare class FeesWrapper implements TransactionFeesInstance {
    /** base configuration or state exposed by this contract. */
    base: AttoXL1;
    /** gas Limit configuration or state exposed by this contract. */
    gasLimit: AttoXL1;
    /** gas Price configuration or state exposed by this contract. */
    gasPrice: AttoXL1;
    /** priority configuration or state exposed by this contract. */
    priority: AttoXL1;
    /** Creates an instance with the supplied configuration. */
    constructor({ base, gasLimit, gasPrice, priority, }: TransactionFeesHex | TransactionFeesBigInt);
    /** Validates  and returns the validation result. */
    static validate({ base, gasLimit, gasPrice, priority, }: TransactionFeesHex | TransactionFeesBigInt): Promisable<Error[]>;
    /** Validates  and returns the validation result. */
    validate(): Promise<Error[]>;
}
//# sourceMappingURL=Fees.d.ts.map