import { Contract } from '@turajs/contracts'; import { ContractList } from '../contractList'; import { ContractIdList } from '../contractIdList'; import { GetContractMapValuesByFirstKeyArgs, GetSingleContractMapValueArgs, PublishContractArgs, PublishContractByReferenceArgs, CallContractMethodArgs, GetAllContractIdsArgs, GetContractsByAccountArgs, GetAllContractsByCodeHashArgs } from '../args'; import { TransactionId } from '../transactionId'; import { UnsignedTransaction } from '../unsignedTransaction'; import { ContractMapValueList } from '../contractMapValueList'; export interface ContractApi { getContract: (id: string) => Promise; getContractsByAccount: (args: GetContractsByAccountArgs) => Promise; getAllContractIds: (args: GetAllContractIdsArgs) => Promise; publishContract: (args: PublishContractArgs) => Promise; publishContractByReference: (args: PublishContractByReferenceArgs) => Promise; callContractMethod: (args: CallContractMethodArgs) => Promise; getSingleContractMapValue: (args: GetSingleContractMapValueArgs) => Promise<{ value: string; }>; getContractMapValuesByFirstKey: (args: GetContractMapValuesByFirstKeyArgs) => Promise; getAllContractsByCodeHash: (args: GetAllContractsByCodeHashArgs) => Promise; }