import { Addressish } from '@monaxlabs/phloem/dist/types'; import { BigNumberish, BytesLike, ContractTransaction } from 'ethers'; import { CollectionContract } from '../..'; import type { Signerish, WriteOverrides } from '../types'; import { ContractFunction } from './features'; declare const SafeTransferFromPartitions: { nft: ("standard/IERC721.sol:IERC721V0" | "standard/IERC721.sol:IERC721V1" | "standard/IERC721.sol:IERC721V2" | "standard/IERC721.sol:IERC721V3" | "standard/IERC721.sol:IERC721V4" | "standard/IERC721.sol:IERC721V5")[]; nftV2: ("standard/IERC721.sol:IERC721V0" | "standard/IERC721.sol:IERC721V1" | "standard/IERC721.sol:IERC721V2" | "standard/IERC721.sol:IERC721V3" | "standard/IERC721.sol:IERC721V4" | "standard/IERC721.sol:IERC721V5")[]; sft: ("standard/IERC1155.sol:IERC1155SupplyV0" | "standard/IERC1155.sol:IERC1155SupplyV1" | "standard/IERC1155.sol:IERC1155SupplyV2" | "standard/IERC1155.sol:IERC1155V0" | "standard/IERC1155.sol:IERC1155V1" | "standard/IERC1155.sol:IERC1155V2" | "standard/IERC1155.sol:IERC1155V3" | "standard/IERC1155.sol:IERC1155V4" | "standard/IERC1155.sol:IERC1155V5")[]; }; type SafeTransferFromPartitions = typeof SafeTransferFromPartitions; declare const SafeTransferFromInterfaces: ("standard/IERC1155.sol:IERC1155SupplyV0" | "standard/IERC1155.sol:IERC1155SupplyV1" | "standard/IERC1155.sol:IERC1155SupplyV2" | "standard/IERC1155.sol:IERC1155V0" | "standard/IERC1155.sol:IERC1155V1" | "standard/IERC1155.sol:IERC1155V2" | "standard/IERC1155.sol:IERC1155V3" | "standard/IERC1155.sol:IERC1155V4" | "standard/IERC721.sol:IERC721V0" | "standard/IERC721.sol:IERC721V1" | "standard/IERC721.sol:IERC721V2" | "standard/IERC721.sol:IERC721V3" | "standard/IERC721.sol:IERC721V4" | "standard/IERC1155.sol:IERC1155V5" | "standard/IERC721.sol:IERC721V5")[]; type SafeTransferFromInterfaces = (typeof SafeTransferFromInterfaces)[number]; export type SafeTransferFromCallArgs = [signer: Signerish, args: SafeTransferFromArgs, overrides?: WriteOverrides]; export type SafeTransferFromResponse = ContractTransaction; export type SafeTransferFromArgs = { fromAddress: Addressish; toAddress: Addressish; tokenId: BigNumberish; bytes?: BytesLike; amount?: BigNumberish; }; export declare class SafeTransferFrom extends ContractFunction { readonly functionName = "safeTransferFrom"; constructor(base: CollectionContract); execute(...args: SafeTransferFromCallArgs): Promise; safeTransferFrom(signer: Signerish, { fromAddress, toAddress, tokenId, bytes, amount }: SafeTransferFromArgs, overrides?: WriteOverrides): Promise; estimateGas(signer: Signerish, { fromAddress, toAddress, tokenId, bytes, amount }: SafeTransferFromArgs, overrides?: WriteOverrides): Promise; populateTransaction({ fromAddress, toAddress, tokenId, bytes, amount }: SafeTransferFromArgs, overrides?: WriteOverrides): Promise; } export declare const safeTransferFrom: (new (base: CollectionContract) => ((signer: Signerish, args: SafeTransferFromArgs, overrides?: WriteOverrides | undefined) => Promise) & SafeTransferFrom) & ((base: CollectionContract) => ((signer: Signerish, args: SafeTransferFromArgs, overrides?: WriteOverrides | undefined) => Promise) & SafeTransferFrom); export {};