/* tslint:disable */
/* eslint-disable */
/**
 * Admin API
 * The Admin API is used to manage the ApeCloud platform. 
 *
 * The version of the OpenAPI document: 1.0.0
 * Contact: support@apecloud.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


// May contain unused imports in some cases
// @ts-ignore
import type { ImportCapabilityType } from './import-capability-type';
// May contain unused imports in some cases
// @ts-ignore
import type { ImportConnectionField } from './import-connection-field';
// May contain unused imports in some cases
// @ts-ignore
import type { ImportReplicationMetadata } from './import-replication-metadata';
// May contain unused imports in some cases
// @ts-ignore
import type { ImportSourceCategory } from './import-source-category';
// May contain unused imports in some cases
// @ts-ignore
import type { ImportSourceType } from './import-source-type';
// May contain unused imports in some cases
// @ts-ignore
import type { LocalizedDescription } from './localized-description';

/**
 * Supported data source definition for an import capability.
 * @export
 * @interface ImportSupportedSource
 */
export interface ImportSupportedSource {
    /**
     * 
     * @type {ImportSourceType}
     * @memberof ImportSupportedSource
     */
    'type': ImportSourceType;
    /**
     * 
     * @type {ImportSourceCategory}
     * @memberof ImportSupportedSource
     */
    'category': ImportSourceCategory;
    /**
     * Display name of the supported source.
     * @type {string}
     * @memberof ImportSupportedSource
     */
    'name': string;
    /**
     * Whether the source is currently supported.
     * @type {boolean}
     * @memberof ImportSupportedSource
     */
    'supported': boolean;
    /**
     * 
     * @type {LocalizedDescription}
     * @memberof ImportSupportedSource
     */
    'description'?: LocalizedDescription;
    /**
     * 
     * @type {LocalizedDescription}
     * @memberof ImportSupportedSource
     */
    'guide'?: LocalizedDescription;
    /**
     * Supported import capabilities.
     * @type {Array<ImportCapabilityType>}
     * @memberof ImportSupportedSource
     */
    'capabilities'?: Array<ImportCapabilityType>;
    /**
     * Prerequisite steps for enabling the source.
     * @type {Array<LocalizedDescription>}
     * @memberof ImportSupportedSource
     */
    'requirements'?: Array<LocalizedDescription>;
    /**
     * Required connection parameters for the source.
     * @type {Array<ImportConnectionField>}
     * @memberof ImportSupportedSource
     */
    'connectionFields': Array<ImportConnectionField>;
    /**
     * Compatible source version patterns.
     * @type {Array<string>}
     * @memberof ImportSupportedSource
     */
    'supportedVersions'?: Array<string>;
    /**
     * 
     * @type {ImportReplicationMetadata}
     * @memberof ImportSupportedSource
     */
    'replicationMetadata'?: ImportReplicationMetadata;
}



