/* tslint:disable */ /* eslint-disable */ /** * Vectorize API * API for Vectorize services (Beta) * * The version of the OpenAPI document: 0.1.2 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; /** * Configuration for Amazon S3 connector * @export * @interface AWSS3Config */ export interface AWSS3Config { /** * File Extensions * @type {Array} * @memberof AWSS3Config */ fileExtensions: AWSS3ConfigFileExtensionsEnum; /** * Check for updates every (seconds) * @type {number} * @memberof AWSS3Config */ idleTime: number; /** * Recursively scan all folders in the bucket * @type {boolean} * @memberof AWSS3Config */ recursive?: boolean; /** * Path Prefix * @type {string} * @memberof AWSS3Config */ pathPrefix?: string; /** * Path Metadata Regex * @type {string} * @memberof AWSS3Config */ pathMetadataRegex?: string; /** * Path Regex Group Names. Example: Enter Group Name * @type {Array} * @memberof AWSS3Config */ pathRegexGroupNames?: Array; } /** * @export */ export const AWSS3ConfigFileExtensionsEnum = { Pdf: 'pdf', Docdocxgdocodtrtfepub: 'doc,docx,gdoc,odt,rtf,epub', Pptpptxgslides: 'ppt,pptx,gslides', Xlsxlsxgsheetsods: 'xls,xlsx,gsheets,ods', Emlmsg: 'eml,msg', Txt: 'txt', Htmlhtm: 'html,htm', Md: 'md', Jpgjpegpngwebpsvggif: 'jpg,jpeg,png,webp,svg,gif', Json: 'json', Csv: 'csv' } as const; export type AWSS3ConfigFileExtensionsEnum = typeof AWSS3ConfigFileExtensionsEnum[keyof typeof AWSS3ConfigFileExtensionsEnum]; /** * Check if a given object implements the AWSS3Config interface. */ export function instanceOfAWSS3Config(value: object): value is AWSS3Config { if (!('fileExtensions' in value) || value['fileExtensions'] === undefined) return false; if (!('idleTime' in value) || value['idleTime'] === undefined) return false; return true; } export function AWSS3ConfigFromJSON(json: any): AWSS3Config { return AWSS3ConfigFromJSONTyped(json, false); } export function AWSS3ConfigFromJSONTyped(json: any, ignoreDiscriminator: boolean): AWSS3Config { if (json == null) { return json; } return { 'fileExtensions': json['file-extensions'], 'idleTime': json['idle-time'], 'recursive': json['recursive'] == null ? undefined : json['recursive'], 'pathPrefix': json['path-prefix'] == null ? undefined : json['path-prefix'], 'pathMetadataRegex': json['path-metadata-regex'] == null ? undefined : json['path-metadata-regex'], 'pathRegexGroupNames': json['path-regex-group-names'] == null ? undefined : json['path-regex-group-names'], }; } export function AWSS3ConfigToJSON(json: any): AWSS3Config { return AWSS3ConfigToJSONTyped(json, false); } export function AWSS3ConfigToJSONTyped(value?: AWSS3Config | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'file-extensions': value['fileExtensions'], 'idle-time': value['idleTime'], 'recursive': value['recursive'], 'path-prefix': value['pathPrefix'], 'path-metadata-regex': value['pathMetadataRegex'], 'path-regex-group-names': value['pathRegexGroupNames'], }; }