import { ServiceAgreementTemplate, ServiceNFTSales, ServiceType, ValidationParams } from '../../../ddo'; import { InstantiableConfig } from '../../../Instantiable.abstract'; import { DDO } from '../../../sdk'; import { AgreementInstance } from './AgreementTemplate.abstract'; import { BaseTemplate } from './BaseTemplate.abstract'; import { LockPaymentCondition, EscrowPaymentCondition, TransferNFT721Condition } from '../conditions'; export interface NFT721SalesTemplateParams { consumerId: string; expiration: number; } export declare class NFT721SalesTemplate extends BaseTemplate { static getInstance(config: InstantiableConfig): Promise; service(): ServiceType; serviceEndpoint(): ServiceType; name(): string; description(): string; params(consumerId: string, expiration?: number): NFT721SalesTemplateParams; paramsGen({ consumer_address }: ValidationParams): Promise; lockConditionIndex(): number; conditions(): [ LockPaymentCondition, TransferNFT721Condition, EscrowPaymentCondition ]; instanceFromDDO(agreementIdSeed: string, ddo: DDO, creator: string, parameters: NFT721SalesTemplateParams): Promise>; getServiceAgreementTemplate(): Promise; }