tsonik
Version:
A TypeScript client library for the Iconik API based on Swagger documentation
51 lines • 1.78 kB
TypeScript
import { AxiosRequestConfig } from 'axios';
import { IconikConfig } from './config';
import { ApiResponse } from './types';
import { AssetResource, JobResource, CollectionResource, FileSetResource, FileResource, FormatResource, MetadataResource } from './resources';
/**
* Main client class for interacting with the Iconik API
*/
export declare class Tsonik {
private httpClient;
private config;
private retryConfig;
readonly assets: AssetResource;
readonly jobs: JobResource;
readonly collections: CollectionResource;
readonly filesets: FileSetResource;
readonly files: FileResource;
readonly formats: FormatResource;
readonly metadata: MetadataResource;
constructor(config: IconikConfig);
/**
* Make a GET request to the API
*/
get<T = any>(path: string, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
/**
* Make a POST request to the API
*/
post<T = any>(path: string, data?: any, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
/**
* Make a PUT request to the API
*/
put<T = any>(path: string, data?: any, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
/**
* Make a DELETE request to the API
*/
delete<T = any>(path: string, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
/**
* Make a PATCH request to the API
*/
patch<T = any>(path: string, data?: any, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
/**
* Get client information including version and configuration
* Useful for debugging and support purposes
*/
getClientInfo(): {
name: string;
version: string;
baseUrl: string;
userAgent: string;
};
}
//# sourceMappingURL=client.d.ts.map