UNPKG

mongodb-atlas-api-client

Version:
104 lines (91 loc) 2.49 kB
import {Alert} from './alert' import {AtlasUser} from './atlasUser'; import {Cluster} from './cluster'; import {CloudBackup} from './cloudBackup'; import {CustomDbRole} from './customDbRole'; import {Event} from './event'; import {Organization} from './organization'; import {Project} from './project'; import {ProjectWhitelist} from './projectWhitelist'; import {ProjectAccesslist} from './projectAccesslist'; import {User} from './user'; import {DataLake} from './dataLake'; import {CloudProviderAccess} from './cloudProviderAccess'; import {AtlasSearch} from './atlasSearch'; export * from './alert' export * from './atlasUser'; export * from './cluster'; export * from './cloudBackup'; export * from './customDbRole'; export * from './event'; export * from './organization'; export * from './project'; export * from './projectWhitelist'; export * from './projectAccesslist'; export * from './user'; export * from './dataLake' export * from './cloudProviderAccess'; export * from './atlasSearch'; export interface KeyValuePairDocument { key: string; value: string; } export type KeyValuePairDocumentArray = KeyValuePairDocument[]; export interface AtlasResultsResponse<T> { results: T[]; links: Links; totalCount: number; } export interface Link { href: string; rel: string; } export type Links = Link[]; export interface AtlasError { details: string; error: number; errorCode: string; reason: string; } export type ResponseOrError<T> = T | AtlasError; // Atlas Client export interface AtlasClient { user: User; alert: Alert; atlasUser: AtlasUser; organization: Organization; project: Project; projectWhitelist: ProjectWhitelist; projectAccesslist: ProjectAccesslist; customDbRole: CustomDbRole; cluster: Cluster; cloudBackup: CloudBackup; event: Event; dataLake: DataLake; cloudProviderAccess: CloudProviderAccess; atlasSearch: AtlasSearch } export interface AtlasClientConfig { /** * API Access Public Key */ publicKey: string; /** * API Access Private Key */ privateKey: string; /** * Base URL for Atlas API */ baseUrl: string; /** * Target Project ID in Atlas account */ projectId?: String; } export interface AtlasClientOptions { envelope?: boolean; itemsPerPage?: number; pretty?: boolean; } export default function getMongodbAtlasApiClient(config: AtlasClientConfig): AtlasClient;