import { CheckMacEncoder } from '../security/CheckMacEncoder'; import { ILogisticsCommand } from '../interfaces/ILogisticsCommand'; /** * Content * * Base abstract class for all Logistics Operations and Queries. */ export declare abstract class Content implements ILogisticsCommand { static readonly MERCHANT_TRADE_NO_MAX_LENGTH = 20; protected requestPath: string; protected merchantID: string; protected hashKey: string; protected hashIV: string; protected serverUrl: string; protected content: Record; protected encoder: CheckMacEncoder | null; constructor(merchantID?: string, hashKey?: string, hashIV?: string); protected initContent(): void; setMerchantID(id: string): this; getMerchantID(): string; setHashKey(key: string): this; setHashIV(iv: string): this; setPlatformID(id: string): this; setMerchantTradeNo(tradeNo: string): this; setMerchantTradeDate(date: Date | string): this; setServerReplyURL(url: string): this; setClientReplyURL(url: string): this; setRemark(remark: string): this; setServerUrl(url: string): this; getRequestPath(): string; getEncoder(): CheckMacEncoder; setEncoder(encoder: CheckMacEncoder): this; abstract validate(): void; protected validateBaseParam(): void; getPayload(): Record; getContent(): Record; }