/* 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 Azure Blob Storage connector * @export * @interface AZUREBLOBConfig */ export interface AZUREBLOBConfig { /** * File Extensions * @type {Array} * @memberof AZUREBLOBConfig */ fileExtensions: AZUREBLOBConfigFileExtensionsEnum; /** * Polling Interval (seconds) * @type {number} * @memberof AZUREBLOBConfig */ idleTime: number; /** * Recursively scan all folders in the bucket * @type {boolean} * @memberof AZUREBLOBConfig */ recursive?: boolean; /** * Path Prefix * @type {string} * @memberof AZUREBLOBConfig */ pathPrefix?: string; /** * Path Metadata Regex * @type {string} * @memberof AZUREBLOBConfig */ pathMetadataRegex?: string; /** * Path Regex Group Names. Example: Enter Group Name * @type {Array} * @memberof AZUREBLOBConfig */ pathRegexGroupNames?: Array; } /** * @export */ export const AZUREBLOBConfigFileExtensionsEnum = { 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 AZUREBLOBConfigFileExtensionsEnum = typeof AZUREBLOBConfigFileExtensionsEnum[keyof typeof AZUREBLOBConfigFileExtensionsEnum]; /** * Check if a given object implements the AZUREBLOBConfig interface. */ export function instanceOfAZUREBLOBConfig(value: object): value is AZUREBLOBConfig { if (!('fileExtensions' in value) || value['fileExtensions'] === undefined) return false; if (!('idleTime' in value) || value['idleTime'] === undefined) return false; return true; } export function AZUREBLOBConfigFromJSON(json: any): AZUREBLOBConfig { return AZUREBLOBConfigFromJSONTyped(json, false); } export function AZUREBLOBConfigFromJSONTyped(json: any, ignoreDiscriminator: boolean): AZUREBLOBConfig { 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 AZUREBLOBConfigToJSON(json: any): AZUREBLOBConfig { return AZUREBLOBConfigToJSONTyped(json, false); } export function AZUREBLOBConfigToJSONTyped(value?: AZUREBLOBConfig | 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'], }; }