import { OPNetTransactionTypes } from '../../../interfaces/opnet/OPNetTransactionTypes.js';
export interface MempoolTransactionInput {
    readonly transactionId: string;
    readonly outputIndex: number;
}
export interface MempoolTransactionOutput {
    readonly address: string | null;
    readonly outputIndex: number;
    readonly value: string;
    readonly scriptPubKey: string;
}
export interface PendingTransactionsResult {
    readonly transactions?: IMempoolTransactionData[];
}
export interface IMempoolTransactionData {
    readonly id: string;
    readonly firstSeen: string;
    readonly blockHeight: string;
    readonly transactionType: OPNetTransactionTypes | string;
    readonly psbt: boolean;
    readonly inputs: MempoolTransactionInput[];
    readonly outputs: MempoolTransactionOutput[];
    readonly raw: string;
}
export interface IMempoolOPNetTransactionData extends IMempoolTransactionData {
    readonly theoreticalGasLimit: string;
    readonly priorityFee: string;
    readonly from: string;
    readonly contractAddress: string;
    readonly calldata: string;
}
export interface IMempoolInteractionTransactionData extends IMempoolOPNetTransactionData {
}
export interface IMempoolDeploymentTransactionData extends IMempoolOPNetTransactionData {
    readonly bytecode: string;
}
export type AnyIMempoolTransactionData = IMempoolTransactionData | IMempoolInteractionTransactionData | IMempoolDeploymentTransactionData;
