import { ContractId } from "@hiero-ledger/sdk";
import TransactionResponse from "../../../../domain/context/transaction/TransactionResponse";
import { Security } from "../../../../domain/context/security/Security";
import EvmAddress from "../../../../domain/context/contract/EvmAddress";
import { BondDetails } from "../../../../domain/context/bond/BondDetails";
import { EquityDetails } from "../../../../domain/context/equity/EquityDetails";
import { BondFixedRateDetails } from "../../../../domain/context/bond/BondFixedRateDetails";
import { BondKpiLinkedRateDetails } from "../../../../domain/context/bond/BondKpiLinkedRateDetails";
import { TransactionExecutor } from "../TransactionExecutor";
export declare class FactoryOperations {
    private readonly executor;
    constructor(executor: TransactionExecutor);
    createEquity(securityInfo: Security, equityInfo: EquityDetails, factory: EvmAddress, resolver: EvmAddress, configId: string, configVersion: number, compliance: EvmAddress, identityRegistryAddress: EvmAddress, externalPauses?: EvmAddress[], externalControlLists?: EvmAddress[], externalKycLists?: EvmAddress[], diamondOwnerAccount?: EvmAddress, factoryId?: ContractId | string): Promise<TransactionResponse>;
    createBond(securityInfo: Security, bondInfo: BondDetails, factory: EvmAddress, resolver: EvmAddress, configId: string, configVersion: number, compliance: EvmAddress, identityRegistry: EvmAddress, externalPauses?: EvmAddress[], externalControlLists?: EvmAddress[], externalKycLists?: EvmAddress[], diamondOwnerAccount?: EvmAddress, proceedRecipients?: EvmAddress[], proceedRecipientsData?: string[], factoryId?: ContractId | string): Promise<TransactionResponse>;
    createBondFixedRate(securityInfo: Security, bondInfo: BondFixedRateDetails, factory: EvmAddress, resolver: EvmAddress, configId: string, configVersion: number, compliance: EvmAddress, identityRegistry: EvmAddress, externalPauses?: EvmAddress[], externalControlLists?: EvmAddress[], externalKycLists?: EvmAddress[], diamondOwnerAccount?: EvmAddress, proceedRecipients?: EvmAddress[], proceedRecipientsData?: string[], factoryId?: ContractId | string): Promise<TransactionResponse>;
    createBondKpiLinkedRate(securityInfo: Security, bondInfo: BondKpiLinkedRateDetails, factory: EvmAddress, resolver: EvmAddress, configId: string, configVersion: number, compliance: EvmAddress, identityRegistry: EvmAddress, externalPauses?: EvmAddress[], externalControlLists?: EvmAddress[], externalKycLists?: EvmAddress[], diamondOwnerAccount?: EvmAddress, proceedRecipients?: EvmAddress[], proceedRecipientsData?: string[], factoryId?: ContractId | string): Promise<TransactionResponse>;
    createTrexSuiteBond(salt: string, owner: string, irs: string, onchainId: string, irAgents: string[], tokenAgents: string[], compliancesModules: string[], complianceSettings: string[], claimTopics: number[], issuers: string[], issuerClaims: number[][], security: Security, bondDetails: BondDetails, factory: EvmAddress, resolver: EvmAddress, configId: string, configVersion: number, compliance: EvmAddress, identityRegistryAddress: EvmAddress, diamondOwnerAccount: EvmAddress, proceedRecipients?: EvmAddress[], proceedRecipientsData?: string[], externalPauses?: EvmAddress[], externalControlLists?: EvmAddress[], externalKycLists?: EvmAddress[], factoryId?: ContractId | string): Promise<TransactionResponse>;
    createTrexSuiteEquity(salt: string, owner: string, irs: string, onchainId: string, irAgents: string[], tokenAgents: string[], compliancesModules: string[], complianceSettings: string[], claimTopics: number[], issuers: string[], issuerClaims: number[][], security: Security, equityDetails: EquityDetails, factory: EvmAddress, resolver: EvmAddress, configId: string, configVersion: number, compliance: EvmAddress, identityRegistryAddress: EvmAddress, diamondOwnerAccount: EvmAddress, externalPauses?: EvmAddress[], externalControlLists?: EvmAddress[], externalKycLists?: EvmAddress[], factoryId?: ContractId | string): Promise<TransactionResponse>;
}
