/** * @module Resources/ECFormLinks */ import { AuthParams, SendData } from "../api/RestAPI.js"; import { Metadata } from "./common/types.js"; import { CRUDResource } from "./CRUDResource.js"; import { SubscriptionPeriod } from "./Subscriptions.js"; import { TransactionTokenType } from "./TransactionTokens.js"; export type ECFormLinkItem = { id: string; merchantId: string; storeId: string; formId: string; description: string | null; enabled: boolean; expiry: string | null; jwt: string; secret: string; amount: number; amountFormatted: string; currency: string; createdOn: string; updatedOn: string; tokenType: TransactionTokenType; tokenOnly: boolean; hideCvv?: boolean; hidePrefilledEmail?: boolean; metadata?: T; active: boolean; destination?: string; cvvAuthorize?: boolean; chargeAuth?: boolean; chargeCaptureOn?: string; chargeCaptureIn?: string; /** * Boolean when the card installment select should be shown to the end user * null for subscriptions */ allowCardInstallments: boolean | null; subscriptionStartOn?: string; subscriptionStartIn?: string; subscriptionStartInMonths?: number; subscriptionStartDayOfMonth?: number; subscriptionPreserveEndOfMonth?: boolean; subscriptionInitialAmount?: number; subscriptionCycles?: number; /** * ISO 8601 period. e.g P1M, P23D. Can not be used with the `period` parameter */ subscriptionCyclicalPeriod?: string | null; subscriptionPeriod?: SubscriptionPeriod; /** * ISO 8601 period. e.g P1M, P23D. Can not be used with the `period` parameter */ subscriptionRetryInterval?: string | null; }; export type ECFormLinkPublicCreateParams = Omit, "id" | "createdOn" | "updatedOn" | "amountFormatted" | "secret" | "active">; export type ResponseECFormLink = ECFormLinkItem; export declare class ECFormLinks extends CRUDResource { static routeBase: string; private _get?; get(id: string, data?: SendData | null, auth?: AuthParams): Promise>; private _createTemporary?; createTemporary(data?: SendData>, auth?: AuthParams): Promise>; }