@cardscan.ai/cardscan-client
Version:
Typescript client for the CardScan API
723 lines (722 loc) • 34.1 kB
TypeScript
/**
* CardScan API
* The official documentation for the CardScan API Clients.
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
/// <reference types="ws" />
/// <reference types="node" />
import type { ConfigurationParameters, NameCase } from '../configuration';
import { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import WebSocket from "isomorphic-ws";
import type { Stream } from "stream";
import { EligibilityInfo, KeysToSnakeCase, CardApiResponseSnake, EligibilityApiResponseSnake } from "../models";
import { RequestArgs, BaseAPI } from '../base';
import { CardApiResponse } from '../models';
import { CardPerformance200Response } from '../models';
import { CreateCardRequest } from '../models';
import { CreateEligibilityRequest } from '../models';
import { DirectUpload200Response } from '../models';
import { EligibilityApiResponse } from '../models';
import { GenerateCardUploadUrl200Response } from '../models';
import { GenerateCardUploadUrlRequest } from '../models';
import { GenerateMagicLink200Response } from '../models';
import { GetAccessToken200Response } from '../models';
import { ListEligibility200Response } from '../models';
import { ScanCaptureType } from '../models';
import { ScanOrientation } from '../models';
import { SearchCards200Response } from '../models';
import { ValidateMagicLink200Response } from '../models';
/**
* CardScanApi - axios parameter creator
* @export
*/
export declare const CardScanApiAxiosParamCreator: (configuration?: Configuration) => {
/**
*
* @summary Card - Send performance data
* @param {string} cardId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
cardPerformance: (cardId: string, body?: object, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Creates a new card
* @param {CreateCardRequest} [createCardRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createCard: (createCardRequest?: CreateCardRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Create Eligibility Record
* @param {CreateEligibilityRequest} [createEligibilityRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createEligibility: (createEligibilityRequest?: CreateEligibilityRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Delete Card
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
deleteCardById: (cardId: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Direct Upload
* @param {ScanOrientation} orientation
* @param {ScanCaptureType} captureType
* @param {string} cardId
* @param {string | any} [stringAny]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
directUpload: (orientation: ScanOrientation, captureType: ScanCaptureType, cardId: string, stringAny?: string | any, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Card - Generate Upload URL
* @param {string} cardId
* @param {number} [expiration]
* @param {GenerateCardUploadUrlRequest} [generateCardUploadUrlRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateCardUploadUrl: (cardId: string, expiration?: number, generateCardUploadUrlRequest?: GenerateCardUploadUrlRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Generate Magic Link
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateMagicLink: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Generate an upload URL
* @param {number} expiration
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateUploadUrl: (expiration: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Access Token
* @param {string} [userId] The ID of the user
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getAccessToken: (userId?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Get Card by ID
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getCardById: (cardId: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Get Eligibility
* @param {string} eligibilityId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getEligibilityById: (eligibilityId: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary List Cards
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
listCards: (limit?: number, cursor?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary List Eligibility
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
listEligibility: (limit?: number, cursor?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Search Cards (200) OK
* @param {string} query
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
searchCards: (query: string, limit?: number, cursor?: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Set Scan Metadata
* @param {string} scanId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
setScanMetadata: (scanId: string, body?: object, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
/**
*
* @summary Validate Magic Link
* @param {string} token
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
validateMagicLink: (token: string, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
};
/**
* CardScanApi - functional programming interface
* @export
*/
export declare const CardScanApiFp: (configuration?: Configuration) => {
/**
*
* @summary Card - Send performance data
* @param {string} cardId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
cardPerformance(cardId: string, body?: object, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CardPerformance200Response>>;
/**
*
* @summary Creates a new card
* @param {CreateCardRequest} [createCardRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createCard(createCardRequest?: CreateCardRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CardApiResponse>>;
/**
*
* @summary Create Eligibility Record
* @param {CreateEligibilityRequest} [createEligibilityRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createEligibility(createEligibilityRequest?: CreateEligibilityRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EligibilityApiResponse>>;
/**
*
* @summary Delete Card
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
deleteCardById(cardId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
/**
*
* @summary Direct Upload
* @param {ScanOrientation} orientation
* @param {ScanCaptureType} captureType
* @param {string} cardId
* @param {string | any} [stringAny]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
directUpload(orientation: ScanOrientation, captureType: ScanCaptureType, cardId: string, stringAny?: string | any, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DirectUpload200Response>>;
/**
*
* @summary Card - Generate Upload URL
* @param {string} cardId
* @param {number} [expiration]
* @param {GenerateCardUploadUrlRequest} [generateCardUploadUrlRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateCardUploadUrl(cardId: string, expiration?: number, generateCardUploadUrlRequest?: GenerateCardUploadUrlRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GenerateCardUploadUrl200Response>>;
/**
*
* @summary Generate Magic Link
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateMagicLink(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GenerateMagicLink200Response>>;
/**
*
* @summary Generate an upload URL
* @param {number} expiration
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateUploadUrl(expiration: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GenerateCardUploadUrl200Response>>;
/**
*
* @summary Access Token
* @param {string} [userId] The ID of the user
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getAccessToken(userId?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetAccessToken200Response>>;
/**
*
* @summary Get Card by ID
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getCardById(cardId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<CardApiResponse>>;
/**
*
* @summary Get Eligibility
* @param {string} eligibilityId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getEligibilityById(eligibilityId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<EligibilityApiResponse>>;
/**
*
* @summary List Cards
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
listCards(limit?: number, cursor?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SearchCards200Response>>;
/**
*
* @summary List Eligibility
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
listEligibility(limit?: number, cursor?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ListEligibility200Response>>;
/**
*
* @summary Search Cards (200) OK
* @param {string} query
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
searchCards(query: string, limit?: number, cursor?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<SearchCards200Response>>;
/**
*
* @summary Set Scan Metadata
* @param {string} scanId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
setScanMetadata(scanId: string, body?: object, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
/**
*
* @summary Validate Magic Link
* @param {string} token
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
validateMagicLink(token: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ValidateMagicLink200Response>>;
};
/**
* CardScanApi - factory interface
* @export
*/
export declare const CardScanApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
/**
*
* @summary Card - Send performance data
* @param {string} cardId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
cardPerformance(cardId: string, body?: object, options?: any): AxiosPromise<CardPerformance200Response>;
/**
*
* @summary Creates a new card
* @param {CreateCardRequest} [createCardRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createCard(createCardRequest?: CreateCardRequest, options?: any): AxiosPromise<CardApiResponse>;
/**
*
* @summary Create Eligibility Record
* @param {CreateEligibilityRequest} [createEligibilityRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createEligibility(createEligibilityRequest?: CreateEligibilityRequest, options?: any): AxiosPromise<EligibilityApiResponse>;
/**
*
* @summary Delete Card
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
deleteCardById(cardId: string, options?: any): AxiosPromise<void>;
/**
*
* @summary Direct Upload
* @param {ScanOrientation} orientation
* @param {ScanCaptureType} captureType
* @param {string} cardId
* @param {string | any} [stringAny]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
directUpload(orientation: ScanOrientation, captureType: ScanCaptureType, cardId: string, stringAny?: string | any, options?: any): AxiosPromise<DirectUpload200Response>;
/**
*
* @summary Card - Generate Upload URL
* @param {string} cardId
* @param {number} [expiration]
* @param {GenerateCardUploadUrlRequest} [generateCardUploadUrlRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateCardUploadUrl(cardId: string, expiration?: number, generateCardUploadUrlRequest?: GenerateCardUploadUrlRequest, options?: any): AxiosPromise<GenerateCardUploadUrl200Response>;
/**
*
* @summary Generate Magic Link
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateMagicLink(options?: any): AxiosPromise<GenerateMagicLink200Response>;
/**
*
* @summary Generate an upload URL
* @param {number} expiration
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
generateUploadUrl(expiration: number, options?: any): AxiosPromise<GenerateCardUploadUrl200Response>;
/**
*
* @summary Access Token
* @param {string} [userId] The ID of the user
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getAccessToken(userId?: string, options?: any): AxiosPromise<GetAccessToken200Response>;
/**
*
* @summary Get Card by ID
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getCardById(cardId: string, options?: any): AxiosPromise<CardApiResponse>;
/**
*
* @summary Get Eligibility
* @param {string} eligibilityId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getEligibilityById(eligibilityId: string, options?: any): AxiosPromise<EligibilityApiResponse>;
/**
*
* @summary List Cards
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
listCards(limit?: number, cursor?: string, options?: any): AxiosPromise<SearchCards200Response>;
/**
*
* @summary List Eligibility
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
listEligibility(limit?: number, cursor?: string, options?: any): AxiosPromise<ListEligibility200Response>;
/**
*
* @summary Search Cards (200) OK
* @param {string} query
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
searchCards(query: string, limit?: number, cursor?: string, options?: any): AxiosPromise<SearchCards200Response>;
/**
*
* @summary Set Scan Metadata
* @param {string} scanId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
setScanMetadata(scanId: string, body?: object, options?: any): AxiosPromise<void>;
/**
*
* @summary Validate Magic Link
* @param {string} token
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
validateMagicLink(token: string, options?: any): AxiosPromise<ValidateMagicLink200Response>;
};
/**
* CardScanApi - object-oriented interface
* @export
* @class CardScanApi
* @extends {BaseAPI}
*/
export declare class CardScanApi<TCase extends NameCase = "camel"> extends BaseAPI {
protected basePath: string;
protected axios: AxiosInstance;
readonly websocket?: WebSocket;
constructor(configuration?: ConfigurationParameters | {
nameCase?: TCase;
}, basePath?: string, axios?: AxiosInstance);
/**
* Utility method to create a websocket connection
* @param cb This callback will be invoked with the websocket object once the connection is established or with an error if the connection fails.
*/
withWebsocket: (cb: (websocket: WebSocket | null, error: WebSocket.ErrorEvent | null) => Promise<any>) => void;
/**
* @summary Performs a full scan, including both front and back side scans. (This method requires a websocket URL to be set in the configuration.)
* @param frontImage The front side image to scan. For client side code this can be a File object, for server side code this can be a Blob or a Stream.
* @param backImage The back side image to scan. For client side code this can be a File object, for server side code this can be a Blob or a Stream.
* */
fullScan({ frontImage, backImage, }: {
frontImage: File | Blob | Stream;
backImage?: File | Blob | Stream;
}): Promise<TCase extends 'camel' ? CardApiResponse : CardApiResponseSnake>;
private cardFormDataFactory;
private XMLErrorToCardScanError;
/**
* @summary Performs an eligibility check for a card. (This method requires a websocket URL to be set in the configuration.)
* @param cardId The ID of the card
* @param eligibility The eligibility information to check
* */
checkEligibility(cardId: string, eligibility: EligibilityInfo): Promise<TCase extends 'camel' ? EligibilityApiResponse : EligibilityApiResponseSnake>;
/**
* Utility method to validate eligibility information
* @returns The validated eligibility object
* @throws {yup.ValidationError}
*/
validateEligibility(cardId: string, eligibility: EligibilityInfo): {
eligibility?: {
provider?: {
organizationName?: string;
firstName?: string;
lastName?: string;
npi?: string;
};
subscriber?: {
firstName?: string;
lastName?: string;
dateOfBirth?: string;
};
};
cardId?: string;
};
private toInt;
private sumDigits;
private doubleAlternate;
private npiValid;
/**
*
* @summary Card - Send performance data
* @param {string} cardId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
cardPerformance<OriginalCase extends boolean = false>(cardId: string, body?: object, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").CardPerformance200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").CardPerformance200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").CardPerformance200ResponseOriginal> : never>;
/**
*
* @summary Creates a new card
* @param {CreateCardRequest} [createCardRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
createCard<OriginalCase extends boolean = false>(createCardRequest?: CreateCardRequest, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").CardApiResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").CardApiResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").CardApiResponseOriginal> : never>;
/**
*
* @summary Create Eligibility Record
* @param {CreateEligibilityRequest} [createEligibilityRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
createEligibility<OriginalCase extends boolean = false>(createEligibilityRequest?: CreateEligibilityRequest, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").EligibilityApiResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").EligibilityApiResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").EligibilityApiResponseOriginal> : never>;
/**
*
* @summary Delete Card
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
deleteCardById<OriginalCase extends boolean = false>(cardId: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? void : OriginalCase extends true ? void : TCase extends "camel" ? void : never>;
/**
*
* @summary Direct Upload
* @param {ScanOrientation} orientation
* @param {ScanCaptureType} captureType
* @param {string} cardId
* @param {string | any} [stringAny]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
directUpload<OriginalCase extends boolean = false>(orientation: ScanOrientation, captureType: ScanCaptureType, cardId: string, stringAny?: string | any, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").DirectUpload200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").DirectUpload200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").DirectUpload200ResponseOriginal> : never>;
/**
*
* @summary Card - Generate Upload URL
* @param {string} cardId
* @param {number} [expiration]
* @param {GenerateCardUploadUrlRequest} [generateCardUploadUrlRequest]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
generateCardUploadUrl<OriginalCase extends boolean = false>(cardId: string, expiration?: number, generateCardUploadUrlRequest?: GenerateCardUploadUrlRequest, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GenerateCardUploadUrl200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GenerateCardUploadUrl200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").GenerateCardUploadUrl200ResponseOriginal> : never>;
/**
*
* @summary Generate Magic Link
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
generateMagicLink<OriginalCase extends boolean = false>(options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GenerateMagicLink200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GenerateMagicLink200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").GenerateMagicLink200ResponseOriginal> : never>;
/**
*
* @summary Generate an upload URL
* @param {number} expiration
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
generateUploadUrl<OriginalCase extends boolean = false>(expiration: number, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GenerateCardUploadUrl200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GenerateCardUploadUrl200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").GenerateCardUploadUrl200ResponseOriginal> : never>;
/**
*
* @summary Access Token
* @param {string} [userId] The ID of the user
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
getAccessToken<OriginalCase extends boolean = false>(userId?: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GetAccessToken200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").GetAccessToken200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").GetAccessToken200ResponseOriginal> : never>;
/**
*
* @summary Get Card by ID
* @param {string} cardId The ID of the card
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
getCardById<OriginalCase extends boolean = false>(cardId: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").CardApiResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").CardApiResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").CardApiResponseOriginal> : never>;
/**
*
* @summary Get Eligibility
* @param {string} eligibilityId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
getEligibilityById<OriginalCase extends boolean = false>(eligibilityId: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").EligibilityApiResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").EligibilityApiResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").EligibilityApiResponseOriginal> : never>;
/**
*
* @summary List Cards
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
listCards<OriginalCase extends boolean = false>(limit?: number, cursor?: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").SearchCards200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").SearchCards200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").SearchCards200ResponseOriginal> : never>;
/**
*
* @summary List Eligibility
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
listEligibility<OriginalCase extends boolean = false>(limit?: number, cursor?: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").ListEligibility200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").ListEligibility200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").ListEligibility200ResponseOriginal> : never>;
/**
*
* @summary Search Cards (200) OK
* @param {string} query
* @param {number} [limit]
* @param {string} [cursor]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
searchCards<OriginalCase extends boolean = false>(query: string, limit?: number, cursor?: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").SearchCards200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").SearchCards200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").SearchCards200ResponseOriginal> : never>;
/**
*
* @summary Set Scan Metadata
* @param {string} scanId
* @param {object} [body]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
setScanMetadata<OriginalCase extends boolean = false>(scanId: string, body?: object, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? void : OriginalCase extends true ? void : TCase extends "camel" ? void : never>;
/**
*
* @summary Validate Magic Link
* @param {string} token
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof CardScanApi
*/
validateMagicLink<OriginalCase extends boolean = false>(token: string, options?: RawAxiosRequestConfig & {
forceOriginalCase?: OriginalCase;
}): Promise<TCase extends "snake" ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").ValidateMagicLink200ResponseOriginal>> : OriginalCase extends true ? KeysToSnakeCase<import("../models").KeysToCamelCase<import("../models").ValidateMagicLink200ResponseOriginal>> : TCase extends "camel" ? import("../models").KeysToCamelCase<import("../models").ValidateMagicLink200ResponseOriginal> : never>;
/**
* Utility function to transform an object's fields to snake_case
*/
toSnakeCase: <T>(obj: any) => T;
/**
* Utility function to transform an object's fields to camelCase
**/
toCamelCase: <T>(obj: any) => T;
}