import { SuiFrenObject, Balance, SuiFrenAccessoryType, SuiFrenAccessoryObject, AnyObjectType, ObjectId, SuiAddress, CallerConfig } from "../../types";
import { Caller } from "../../general/utils/caller";
import { AftermathApi } from "../../general/providers";
export declare class SuiFren extends Caller {
    readonly suiFren: SuiFrenObject;
    readonly isStaked: boolean;
    readonly isOwned: boolean;
    private readonly Provider?;
    constructor(suiFren: SuiFrenObject, config?: CallerConfig, isStaked?: boolean, isOwned?: boolean, Provider?: AftermathApi | undefined);
    suiFrenType(): AnyObjectType;
    properties(): Record<string, string>;
    dynamicFields(): Record<string, string>;
    displayNumber(): string;
    clone(): SuiFren;
    getAccessories(): Promise<SuiFrenAccessoryObject[]>;
    getStakeTransaction(inputs: {
        baseFee: Balance;
        feeIncrementPerMix: Balance;
        minRemainingMixesToKeep: bigint;
        walletAddress: SuiAddress;
    }): Promise<import("@mysten/sui/transactions").Transaction>;
    getAddAccessoryTransaction(inputs: {
        accessoryId: ObjectId;
        walletAddress: SuiAddress;
    }): Promise<import("@mysten/sui/transactions").Transaction>;
    getRemoveAccessoryTransaction(inputs: {
        accessoryType: SuiFrenAccessoryType;
        walletAddress: SuiAddress;
    }): Promise<import("@mysten/sui/transactions").Transaction>;
    private useProvider;
}
//# sourceMappingURL=suiFren.d.ts.map