/* tslint:disable */ /* eslint-disable */ /** * Lemonway DirectKit API 2.0 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: v2 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { exists, mapValues } from '../runtime'; /** * * @export * @interface UploadDocumentInput */ export interface UploadDocumentInput { /** * Document Name * @type {string} * @memberof UploadDocumentInput */ name: string; /** * Document Type:

Note:   * If you have previously uploaded a document in a reserved slot(0-13) and need to upload another document of the same type, use the slot Other document(14-20).
0 = ID card (both sides in one file).
1 = Proof of address.
2 = Scan of a proof of IBAN.
3 = Passport (European Union).
4 = Passport (outside the European Union).
5 = Residence permit (both sides in one file).
7 = Official company registration document (Kbis extract or equivalent).
11 = Driver licence (both sides in one file).
12 = Status.
13 = Selfie.
14 = Other document type.
15 = Other document type.
16 = Other document type.
17 = Other document type.
18 = Other document type.
19 = Other document type.
20 = Other document type.
21 = SDD mandate.
* @type {number} * @memberof UploadDocumentInput */ type: UploadDocumentInputTypeEnum; /** * Byte array with the document. Encode in base 64 if necessary. * @type {string} * @memberof UploadDocumentInput */ buffer: string; /** * Lets you upload your signed (with your own signing partner) mandate document, to validate a mandate ID you previously created with RegisterSddMandate. * @type {number} * @memberof UploadDocumentInput */ sddMandateId?: number; } /** * @export */ export const UploadDocumentInputTypeEnum = { NUMBER_0: 0, NUMBER_1: 1, NUMBER_2: 2, NUMBER_3: 3, NUMBER_4: 4, NUMBER_5: 5, NUMBER_7: 7, NUMBER_11: 11, NUMBER_12: 12, NUMBER_13: 13, NUMBER_14: 14, NUMBER_15: 15, NUMBER_16: 16, NUMBER_17: 17, NUMBER_18: 18, NUMBER_19: 19, NUMBER_20: 20, NUMBER_21: 21 } as const; export type UploadDocumentInputTypeEnum = typeof UploadDocumentInputTypeEnum[keyof typeof UploadDocumentInputTypeEnum]; /** * Check if a given object implements the UploadDocumentInput interface. */ export function instanceOfUploadDocumentInput(value: object): boolean { let isInstance = true; isInstance = isInstance && "name" in value; isInstance = isInstance && "type" in value; isInstance = isInstance && "buffer" in value; return isInstance; } export function UploadDocumentInputFromJSON(json: any): UploadDocumentInput { return UploadDocumentInputFromJSONTyped(json, false); } export function UploadDocumentInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): UploadDocumentInput { if ((json === undefined) || (json === null)) { return json; } return { 'name': json['name'], 'type': json['type'], 'buffer': json['buffer'], 'sddMandateId': !exists(json, 'sddMandateId') ? undefined : json['sddMandateId'], }; } export function UploadDocumentInputToJSON(value?: UploadDocumentInput | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'name': value.name, 'type': value.type, 'buffer': value.buffer, 'sddMandateId': value.sddMandateId, }; }