/**
* Apimatic APILib
*
* This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
*/
import { ApiResponse, FileWrapper, RequestOptions } from '../core.js';
import { Accept } from '../models/accept.js';
import { Accept2 } from '../models/accept2.js';
import { ApiEntity } from '../models/apiEntity.js';
import { ContentType } from '../models/contentType.js';
import { ExportFormats } from '../models/exportFormats.js';
import { ImportApiVersionViaUrlRequest } from '../models/importApiVersionViaUrlRequest.js';
import { ImportApiViaUrlRequest } from '../models/importApiViaUrlRequest.js';
import { InplaceImportApiViaUrlRequest } from '../models/inplaceImportApiViaUrlRequest.js';
import { BaseController } from './baseController.js';
export declare class ApisManagementController extends BaseController {
/**
* Import an API into the APIMatic Dashboard by uploading the API specification file.
*
* You can also specify [API Metadata](https://docs.apimatic.io/manage-apis/apimatic-metadata) while
* importing the API using this endpoint. When specifying Metadata, the uploaded file will be a zip
* file containing the API specification file and the `APIMATIC-META` json file.
*
* @param contentType
* @param file The API specification file.
The type of the specification file should be
* any of the [supported formats](https://docs.apimatic.io/api-
* transformer/overview-transformer#supported-input-formats).
* @return Response from the API call
*/
importApiViaFile(contentType: ContentType, file: FileWrapper, requestOptions?: RequestOptions): Promise>;
/**
* Import an API into the APIMatic Dashboard by providing the URL of the API specification file.
*
* You can also specify [API Metadata](https://docs.apimatic.io/manage-apis/apimatic-metadata) while
* importing the API using this endpoint. When specifying Metadata, the URL provided will be that of a
* zip file containing the API specification file and the `APIMATIC-META` json file.
*
* @param body Request Body
* @return Response from the API call
*/
importApiViaUrl(body: ImportApiViaUrlRequest, requestOptions?: RequestOptions): Promise>;
/**
* Import a new version for an API, against an existing API Group, by uploading the API specification
* file.
*
* You can also specify [API Metadata](https://docs.apimatic.io/manage-apis/apimatic-metadata) while
* importing the API version using this endpoint. When specifying Metadata, the uploaded file will be a
* zip file containing the API specification file and the `APIMATIC-META` json file.
*
* @param apiGroupId The ID of the API Group for which to import a new API version.
* @param accept
* @param versionOverride The version number with which the new API version will be imported. This
* version number will override the version specified in the API specification
* file.
APIMatic recommends versioning the API with the [versioning
* scheme](https://docs.apimatic.io/define-apis/basic-settings/#version)
* documented in the docs.
* @param file The API specification file.
The type of the specification file should
* be any of the [supported formats](https://docs.apimatic.io/api-
* transformer/overview-transformer#supported-input-formats).
* @return Response from the API call
*/
importNewApiVersionViaFile(apiGroupId: string, accept: Accept, versionOverride: string, file: FileWrapper, requestOptions?: RequestOptions): Promise>;
/**
* Import a new version for an API, against an existing API Group, by providing the URL of the API
* specification file.
*
* You can also specify [API Metadata](https://docs.apimatic.io/manage-apis/apimatic-metadata) while
* importing the API version using this endpoint. When specifying Metadata, the URL provided will be
* that of a zip file containing the API specification file and the `APIMATIC-META` json file.
*
* @param apiGroupId The ID of the API Group for which to import a new API
* version.
* @param accept
* @param body Request Body
* @return Response from the API call
*/
importNewApiVersionViaUrl(apiGroupId: string, accept: Accept, body: ImportApiVersionViaUrlRequest, requestOptions?: RequestOptions): Promise>;
/**
* Replace an API version of an API Group, by uploading the API specification file that will replace
* the current version.
*
* You can also specify [API Metadata](https://docs.apimatic.io/manage-apis/apimatic-metadata) while
* importing the API version using this endpoint. When specifying Metadata, the uploaded file will be a
* zip file containing the API specification file and the `APIMATIC-META` json file.
*
* @param apiEntityId The ID of the API Entity to replace.
* @param accept
* @param file The API specification file.
The type of the specification file should be
* any of the [supported formats](https://docs.apimatic.io/api-
* transformer/overview-transformer#supported-input-formats).
* @return Response from the API call
*/
inplaceApiImportViaFile(apiEntityId: string, accept: Accept2, file: FileWrapper, requestOptions?: RequestOptions): Promise>;
/**
* Replace an API version of an API Group, by providing the URL of the API specification file that will
* replace the current version.
*
* You can also specify [API Metadata](https://docs.apimatic.io/manage-apis/apimatic-metadata) while
* importing the API version using this endpoint. When specifying Metadata, the URL provided will be
* that of a zip file containing the API specification file and the `APIMATIC-META` json file.
*
* @param apiEntityId The ID of the API Entity to replace.
* @param body Request Body
* @return Response from the API call
*/
inplaceApiImportViaUrl(apiEntityId: string, body: InplaceImportApiViaUrlRequest, requestOptions?: RequestOptions): Promise>;
/**
* Fetch an API Entity.
*
* @param apiEntityId The ID of the API Entity to fetch.
* @return Response from the API call
*/
fetchApiEntity(apiEntityId: string, requestOptions?: RequestOptions): Promise>;
/**
* Download the API Specification file for a an API Version in any of the API Specification formats
* supported by APIMatic.
*
* @param apiEntityId The ID of the API Entity to download.
* @param format The format in which to download the API.
The format can be any of the
* [supported formats](https://docs.apimatic.io/api-transformer/overview-
* transformer#supported-input-formats).
* @return Response from the API call
*/
downloadApiSpecification(apiEntityId: string, format: ExportFormats, requestOptions?: RequestOptions): Promise>;
}
//# sourceMappingURL=apisManagementController.d.ts.map