import type { CourseExportEligibility } from '../models/CourseExportEligibility'; import type { EximTask } from '../models/EximTask'; import type { ExportTargetEnvironment } from '../models/ExportTargetEnvironment'; import type { PatchedCourseExportEligibility } from '../models/PatchedCourseExportEligibility'; import type { PatchedExportTargetEnvironment } from '../models/PatchedExportTargetEnvironment'; import type { PlatformMigrationRun } from '../models/PlatformMigrationRun'; import type { PlatformMigrationRunCreate } from '../models/PlatformMigrationRunCreate'; import type { CancelablePromise } from '../core/CancelablePromise'; export declare class EximService { /** * Admin-only CRUD for CourseExportEligibility records. * * Lookup is by primary key. Filter by ``is_enabled`` and * ``course__course_id``; search by ``course__course_id``. * @returns CourseExportEligibility * @throws ApiError */ static eximManageEligibilityList({ courseCourseId, isEnabled, search, }: { courseCourseId?: string; isEnabled?: boolean; /** * A search term. */ search?: string; }): CancelablePromise>; /** * Admin-only CRUD for CourseExportEligibility records. * * Lookup is by primary key. Filter by ``is_enabled`` and * ``course__course_id``; search by ``course__course_id``. * @returns CourseExportEligibility * @throws ApiError */ static eximManageEligibilityCreate({ requestBody, }: { requestBody: CourseExportEligibility; }): CancelablePromise; /** * Admin-only CRUD for CourseExportEligibility records. * * Lookup is by primary key. Filter by ``is_enabled`` and * ``course__course_id``; search by ``course__course_id``. * @returns CourseExportEligibility * @throws ApiError */ static eximManageEligibilityRetrieve({ id, }: { /** * A unique integer value identifying this course export eligibility. */ id: number; }): CancelablePromise; /** * Admin-only CRUD for CourseExportEligibility records. * * Lookup is by primary key. Filter by ``is_enabled`` and * ``course__course_id``; search by ``course__course_id``. * @returns CourseExportEligibility * @throws ApiError */ static eximManageEligibilityUpdate({ id, requestBody, }: { /** * A unique integer value identifying this course export eligibility. */ id: number; requestBody: CourseExportEligibility; }): CancelablePromise; /** * Admin-only CRUD for CourseExportEligibility records. * * Lookup is by primary key. Filter by ``is_enabled`` and * ``course__course_id``; search by ``course__course_id``. * @returns CourseExportEligibility * @throws ApiError */ static eximManageEligibilityPartialUpdate({ id, requestBody, }: { /** * A unique integer value identifying this course export eligibility. */ id: number; requestBody?: PatchedCourseExportEligibility; }): CancelablePromise; /** * Admin-only CRUD for CourseExportEligibility records. * * Lookup is by primary key. Filter by ``is_enabled`` and * ``course__course_id``; search by ``course__course_id``. * @returns void * @throws ApiError */ static eximManageEligibilityDestroy({ id, }: { /** * A unique integer value identifying this course export eligibility. */ id: number; }): CancelablePromise; /** * Admin-only CRUD for ExportTargetEnvironment records. * @returns ExportTargetEnvironment * @throws ApiError */ static eximManageEnvironmentsList({ isEnabled, search, }: { isEnabled?: boolean; /** * A search term. */ search?: string; }): CancelablePromise>; /** * Admin-only CRUD for ExportTargetEnvironment records. * @returns ExportTargetEnvironment * @throws ApiError */ static eximManageEnvironmentsCreate({ requestBody, }: { requestBody: ExportTargetEnvironment; }): CancelablePromise; /** * Admin-only CRUD for ExportTargetEnvironment records. * @returns ExportTargetEnvironment * @throws ApiError */ static eximManageEnvironmentsRetrieve({ id, }: { /** * A unique integer value identifying this export target environment. */ id: number; }): CancelablePromise; /** * Admin-only CRUD for ExportTargetEnvironment records. * @returns ExportTargetEnvironment * @throws ApiError */ static eximManageEnvironmentsUpdate({ id, requestBody, }: { /** * A unique integer value identifying this export target environment. */ id: number; requestBody: ExportTargetEnvironment; }): CancelablePromise; /** * Admin-only CRUD for ExportTargetEnvironment records. * @returns ExportTargetEnvironment * @throws ApiError */ static eximManageEnvironmentsPartialUpdate({ id, requestBody, }: { /** * A unique integer value identifying this export target environment. */ id: number; requestBody?: PatchedExportTargetEnvironment; }): CancelablePromise; /** * Admin-only CRUD for ExportTargetEnvironment records. * @returns void * @throws ApiError */ static eximManageEnvironmentsDestroy({ id, }: { /** * A unique integer value identifying this export target environment. */ id: number; }): CancelablePromise; /** * Start and poll tenant-data migration runs (the platform_migration lane). * * ``POST`` starts a run and returns its ``run_id`` (kicking the Celery task); * ``GET`` list/detail surface status + progress + report. Detail lookup is by * the public ``run_id`` UUID, not the surrogate PK. Gated by the * feature flag — start is rejected with 503 on non-AI deployments. * @returns PlatformMigrationRun * @throws ApiError */ static eximManagePlatformMigrationsList({ direction, ordering, sourceKey, status, targetKey, }: { /** * * `export` - Export * * `import` - Import */ direction?: 'export' | 'import'; /** * Which field to use when ordering the results. */ ordering?: string; sourceKey?: string; /** * * `pending` - Pending * * `in_progress` - In Progress * * `completed` - Completed * * `failed` - Failed * * `canceled` - Canceled */ status?: 'canceled' | 'completed' | 'failed' | 'in_progress' | 'pending'; targetKey?: string; }): CancelablePromise>; /** * Start and poll tenant-data migration runs (the platform_migration lane). * * ``POST`` starts a run and returns its ``run_id`` (kicking the Celery task); * ``GET`` list/detail surface status + progress + report. Detail lookup is by * the public ``run_id`` UUID, not the surrogate PK. Gated by the * feature flag — start is rejected with 503 on non-AI deployments. * @returns PlatformMigrationRunCreate * @throws ApiError */ static eximManagePlatformMigrationsCreate({ requestBody, }: { requestBody: PlatformMigrationRunCreate; }): CancelablePromise; /** * Start and poll tenant-data migration runs (the platform_migration lane). * * ``POST`` starts a run and returns its ``run_id`` (kicking the Celery task); * ``GET`` list/detail surface status + progress + report. Detail lookup is by * the public ``run_id`` UUID, not the surrogate PK. Gated by the * feature flag — start is rejected with 503 on non-AI deployments. * @returns PlatformMigrationRun * @throws ApiError */ static eximManagePlatformMigrationsRetrieve({ runId, }: { runId: string; }): CancelablePromise; /** * Cancel a still-pending run. No-op for any other status. * * Conditional UPDATE so we don't race the worker: if it has already flipped * the row to ``in_progress`` the UPDATE matches zero rows and we return 409. * A run already executing is not interrupted mid-phase. * @returns PlatformMigrationRun * @throws ApiError */ static eximManagePlatformMigrationsCancelCreate({ runId, requestBody, }: { runId: string; requestBody?: PlatformMigrationRun; }): CancelablePromise; /** * Stream a completed export's bundle as a single ``.zip``. * * Token-gated (IsDMAdmin) REST mirror of the admin "Download .zip" link, so * a programmatic caller can pull the bundle down to move it to another * deployment. Only a completed EXPORT with a bundle still on disk is * downloadable; imports and not-yet-finished runs have nothing to stream. * @returns PlatformMigrationRun * @throws ApiError */ static eximManagePlatformMigrationsDownloadRetrieve({ runId, }: { runId: string; }): CancelablePromise; /** * Upload a bundle ``.zip`` and start an import run from it (API parity). * * The programmatic mirror of the admin "Import from uploaded ZIP" page, so a * caller that pulled a bundle off one deployment can push it to another over * the API alone. Multipart fields: ``bundle_file`` (the zip, required), * ``target_key`` (required), optional ``selected_components`` (repeatable), * ``admin_user``, ``email``. * * On an S3 deployment the validated bundle is stored to S3 and the import * runs from there (any node can execute it); otherwise it stays on local * disk like the admin flow. * @returns PlatformMigrationRun * @throws ApiError */ static eximManagePlatformMigrationsImportUploadCreate({ formData, }: { formData?: PlatformMigrationRun; }): CancelablePromise; /** * Admin-only read-only access to EximTask records. * * Tasks are created by signals and the admin sync action; this API * surfaces them for inspection only. The ``cancel`` action transitions * a still-pending task to ``canceled`` so it gets skipped by the worker. * @returns EximTask * @throws ApiError */ static eximManageTasksList({ courseCourseId, ordering, status, targetEnvironment, }: { courseCourseId?: string; /** * Which field to use when ordering the results. */ ordering?: string; /** * * `pending` - Pending * * `in_progress` - In Progress * * `completed` - Completed * * `failed` - Failed * * `canceled` - Canceled */ status?: 'canceled' | 'completed' | 'failed' | 'in_progress' | 'pending'; targetEnvironment?: number; }): CancelablePromise>; /** * Admin-only read-only access to EximTask records. * * Tasks are created by signals and the admin sync action; this API * surfaces them for inspection only. The ``cancel`` action transitions * a still-pending task to ``canceled`` so it gets skipped by the worker. * @returns EximTask * @throws ApiError */ static eximManageTasksRetrieve({ id, }: { /** * A unique integer value identifying this exim task. */ id: number; }): CancelablePromise; /** * Cancel a pending task. No-op for any other status. * * Uses a conditional UPDATE so that we don't race with the worker: * if the worker has just locked the row and flipped status to * ``in_progress``, the UPDATE matches zero rows and we return 409 * instead of overwriting the worker's transition. * @returns EximTask * @throws ApiError */ static eximManageTasksCancelCreate({ id, requestBody, }: { /** * A unique integer value identifying this exim task. */ id: number; requestBody?: EximTask; }): CancelablePromise; }