import { AuthApi, ClassifyApi, DSPApi, DeploymentApi, DevicesApi, ExportApi, HealthApi, ImpulseApi, JobsApi, LearnApi, LoginApi, OptimizationApi, OrganizationBlocksApi, OrganizationCreateProjectApi, OrganizationDataApi, OrganizationJobsApi, OrganizationPipelinesApi, OrganizationPortalsApi, OrganizationsApi, ProjectsApi, RawDataApi, ThemesApi, UploadPortalApi, UserApi, WhitelabelsApi, AdminApi, PerformanceCalibrationApi, MetricsApi, OrganizationDataCampaignsApi, PostProcessingApi, DatasetVersionsApi, VlmApi, IntegrationsApi } from './sdk/api'; export type EdgeImpulseApiOpts = { endpoint?: string; debug?: boolean; extraHeaders?: { [name: string]: string; }; }; export type EdgeImpulseApiAuthOpts = { method: 'apiKey'; apiKey: string; } | { method: 'jwtToken'; jwtToken: string; }; export declare class EdgeImpulseApi { private _opts; admin: AdminApi; auth: AuthApi; classify: ClassifyApi; datasetVersions: DatasetVersionsApi; dsp: DSPApi; deployment: DeploymentApi; devices: DevicesApi; export: ExportApi; health: HealthApi; impulse: ImpulseApi; integrations: IntegrationsApi; jobs: JobsApi; learn: LearnApi; login: LoginApi; metrics: MetricsApi; optimization: OptimizationApi; organizationBlocks: OrganizationBlocksApi; organizationCreateProject: OrganizationCreateProjectApi; organizationData: OrganizationDataApi; organizationDataCampaigns: OrganizationDataCampaignsApi; organizationJobs: OrganizationJobsApi; organizationPipelines: OrganizationPipelinesApi; organizationPortals: OrganizationPortalsApi; organizations: OrganizationsApi; performanceCalibration: PerformanceCalibrationApi; postProcessing: PostProcessingApi; projects: ProjectsApi; rawData: RawDataApi; themes: ThemesApi; uploadPortal: UploadPortalApi; user: UserApi; vlm: VlmApi; whitelabels: WhitelabelsApi; /** * Initialize the API * @param opts An object with { auth, endpoint }. */ constructor(opts?: EdgeImpulseApiOpts); authenticate(opts: EdgeImpulseApiAuthOpts): Promise; runJobUntilCompletion(opts: { type: 'project'; projectId: number; jobId: number; } | { type: 'organization'; organizationId: number; jobId: number; }, dataCallback?: (ev: string) => void): Promise; private runProjectJobUntilCompletion; get studioHost(): string; private getProjectWebsocket; private runOrgJobUntilCompletion; private getOrgWebsocket; private sleep; private waitForJobImpl; private getWebsocketImpl; }