/**
* Finix API
*/
///
import * as http from 'http';
import { ApplePaySession } from '../model/applePaySession';
import { ApplePaySessionRequest } from '../model/applePaySessionRequest';
import { CreatePaymentInstrumentRequest } from '../model/createPaymentInstrumentRequest';
import { PaymentInstrument } from '../model/paymentInstrument';
import { UpdatePaymentInstrumentRequest } from '../model/updatePaymentInstrumentRequest';
import { ListPaymentInstrumentsQueryParams } from '../model/listPaymentInstrumentsQueryParams';
import { Authentication, Interceptor, finixList } from '../model/models';
import { HttpBasicAuth } from '../model/models';
export declare enum PaymentInstrumentsApiApiKeys {
}
export declare class PaymentInstrumentsApi {
protected _basePath: string;
protected _defaultHeaders: any;
protected _useQuerystring: boolean;
protected authentications: {
default: Authentication;
BasicAuth: HttpBasicAuth;
};
protected interceptors: Interceptor[];
constructor(basePath?: string);
constructor(username: string, password: string, basePath?: string);
set useQuerystring(value: boolean);
set basePath(basePath: string);
set defaultHeaders(defaultHeaders: any);
get defaultHeaders(): any;
get basePath(): string;
setDefaultAuthentication(auth: Authentication): void;
setApiKey(key: PaymentInstrumentsApiApiKeys, value: string): void;
set username(username: string);
set password(password: string);
addInterceptor(interceptor: Interceptor): void;
/**
* Helper function.
* Create an `apple_pay_session` to process Apple Pay transactions on the web. To create an Apple Pay Session, pass the unique `validation_url` (provided by Apple) while creating an `apple_pay_sessions` resource. Finix returns a `merchantSession` object that you can use to create a payment. For more information, see [Apple Pay](/guides/payments/alternative-payment-methods/apple-pay/).
* @summary Create an Apple Pay Session
* @param applePaySessionRequest
*/
private createApplePaySessionHelper;
/**
* Create an `apple_pay_session` to process Apple Pay transactions on the web. To create an Apple Pay Session, pass the unique `validation_url` (provided by Apple) while creating an `apple_pay_sessions` resource. Finix returns a `merchantSession` object that you can use to create a payment. For more information, see [Apple Pay](/guides/payments/alternative-payment-methods/apple-pay/).
* @summary Create an Apple Pay Session
* @param applePaySessionRequest
*/
createApplePaySession(applePaySessionRequest?: ApplePaySessionRequest, options?: {
headers: {
[name: string]: string;
};
}): Promise;
/**
* Create an `apple_pay_session` to process Apple Pay transactions on the web. To create an Apple Pay Session, pass the unique `validation_url` (provided by Apple) while creating an `apple_pay_sessions` resource. Finix returns a `merchantSession` object that you can use to create a payment. For more information, see [Apple Pay](/guides/payments/alternative-payment-methods/apple-pay/).
* @summary Create an Apple Pay Session
* @param applePaySessionRequest
*/
createApplePaySessionHttp(applePaySessionRequest?: ApplePaySessionRequest, options?: {
headers: {
[name: string]: string;
};
}): Promise<{
response: http.IncomingMessage;
body: ApplePaySession;
rawBody: any;
}>;
/**
* Helper function.
* Create a `Payment Instrument` resource using a card or bank account. - The creation of `Payment Instruments` directly via Finix\'s API should only be done for testing purposes. You must use [our hosted fields](/guides/payments/making-a-payment/using-hosted-fields/) or the javascript client to remain out of PCI scope.
* @summary Create a Payment Instrument
* @param createPaymentInstrumentRequest
*/
private createHelper;
/**
* Create a `Payment Instrument` resource using a card or bank account. - The creation of `Payment Instruments` directly via Finix\'s API should only be done for testing purposes. You must use [our hosted fields](/guides/payments/making-a-payment/using-hosted-fields/) or the javascript client to remain out of PCI scope.
* @summary Create a Payment Instrument
* @param createPaymentInstrumentRequest
*/
create(createPaymentInstrumentRequest?: CreatePaymentInstrumentRequest, options?: {
headers: {
[name: string]: string;
};
}): Promise;
/**
* Create a `Payment Instrument` resource using a card or bank account. - The creation of `Payment Instruments` directly via Finix\'s API should only be done for testing purposes. You must use [our hosted fields](/guides/payments/making-a-payment/using-hosted-fields/) or the javascript client to remain out of PCI scope.
* @summary Create a Payment Instrument
* @param createPaymentInstrumentRequest
*/
createHttp(createPaymentInstrumentRequest?: CreatePaymentInstrumentRequest, options?: {
headers: {
[name: string]: string;
};
}): Promise<{
response: http.IncomingMessage;
body: PaymentInstrument;
rawBody: any;
}>;
/**
* Helper function.
* Retrieve the details of a `Payment Instrument`.
* @summary Fetch a Payment Instrument
* @param paymentInstrumentId ID of object
*/
private getHelper;
/**
* Retrieve the details of a `Payment Instrument`.
* @summary Fetch a Payment Instrument
* @param paymentInstrumentId ID of object
*/
get(paymentInstrumentId: string, options?: {
headers: {
[name: string]: string;
};
}): Promise;
/**
* Retrieve the details of a `Payment Instrument`.
* @summary Fetch a Payment Instrument
* @param paymentInstrumentId ID of object
*/
getHttp(paymentInstrumentId: string, options?: {
headers: {
[name: string]: string;
};
}): Promise<{
response: http.IncomingMessage;
body: PaymentInstrument;
rawBody: any;
}>;
/**
* Helper function.
* Retrieve a list of `Payment Instruments`.
* @summary List Payment Instruments
*/
private listHelper;
/**
* Retrieve a list of `Payment Instruments`.
* @summary List Payment Instruments
*/
list(listPaymentInstrumentsQueryParams?: ListPaymentInstrumentsQueryParams, options?: {
headers: {
[name: string]: string;
};
}): Promise>;
/**
* Retrieve a list of `Payment Instruments`.
* @summary List Payment Instruments
*/
listHttp(listPaymentInstrumentsQueryParams?: ListPaymentInstrumentsQueryParams, options?: {
headers: {
[name: string]: string;
};
}): Promise<{
response: http.IncomingMessage;
body: finixList;
rawBody: any;
}>;
/**
* Helper function.
* Update a `Payment Instrument` to: - Disable the `Payment Instrument` resource so it can\'t be used in requests - Change the `tags`
* @summary Update a Payment Instrument
* @param paymentInstrumentId ID of object
* @param updatePaymentInstrumentRequest
*/
private updateHelper;
/**
* Update a `Payment Instrument` to: - Disable the `Payment Instrument` resource so it can\'t be used in requests - Change the `tags`
* @summary Update a Payment Instrument
* @param paymentInstrumentId ID of object
* @param updatePaymentInstrumentRequest
*/
update(paymentInstrumentId: string, updatePaymentInstrumentRequest?: UpdatePaymentInstrumentRequest, options?: {
headers: {
[name: string]: string;
};
}): Promise;
/**
* Update a `Payment Instrument` to: - Disable the `Payment Instrument` resource so it can\'t be used in requests - Change the `tags`
* @summary Update a Payment Instrument
* @param paymentInstrumentId ID of object
* @param updatePaymentInstrumentRequest
*/
updateHttp(paymentInstrumentId: string, updatePaymentInstrumentRequest?: UpdatePaymentInstrumentRequest, options?: {
headers: {
[name: string]: string;
};
}): Promise<{
response: http.IncomingMessage;
body: PaymentInstrument;
rawBody: any;
}>;
/**
* Extracts page and links fields from response body and assigns as properties to finixList
*/
private embeddedHelper;
/**
* Extracts offset value from response body and determines if end of list has been reached
*/
private getOffsetQueryParam;
/**
* Extracts nextCursor value from response body and determines if end of list has been reached
*/
private getCursorQueryParam;
}