import { AnnotatedFunctionABI, FunctionInputKind, OfferType, Schema } from './types'; export declare const encodeReplacementPattern: ReplacementEncoder; export declare const encodeCall: (abi: AnnotatedFunctionABI, parameters: Array) => string; export declare const encodeWeb3Call: (abi: AnnotatedFunctionABI, parameters: Array) => string; export declare const encodeParamsCall: (abi: AnnotatedFunctionABI, { owner, replace }: { owner?: string | undefined; replace?: string | boolean | undefined; }) => string; export interface CallSpec { target: string; dataToCall: string; replacementPattern: string; } export declare type SellEncoder = (schema: Schema, asset: T, address: string) => CallSpec; export declare const encodeSell: SellEncoder; export declare type BuyEncoder = (schema: Schema, asset: T, address: string, type?: OfferType) => CallSpec; export declare const encodeBuy: BuyEncoder; export declare type DefaultCallEncoder = (abi: AnnotatedFunctionABI, address: string) => string; export declare const encodeDefaultCall: DefaultCallEncoder; export declare type ReplacementEncoder = (abi: AnnotatedFunctionABI, kind?: FunctionInputKind) => string;