import type { BaseResourceOptions } from '@gitbeaker/requester-utils'; import { ResourceRepositoryStorageMoves } from '../templates'; import type { RepositoryStorageMoveSchema } from '../templates/ResourceRepositoryStorageMoves'; import type { BaseRequestOptions, GitlabAPIResponse, PaginationRequestOptions, PaginationTypes, ShowExpanded, Sudo, } from '../infrastructure'; import type { SimpleProjectSchema } from './Projects'; export interface ProjectRepositoryStorageMoveSchema extends RepositoryStorageMoveSchema { project: SimpleProjectSchema; } export interface ProjectRepositoryStorageMoves extends ResourceRepositoryStorageMoves { all( options?: { projectId?: string | number } & PaginationRequestOptions

& BaseRequestOptions, ): Promise>; show( repositoryStorageId: number, options?: { projectId?: string | number } & Sudo & ShowExpanded, ): Promise>; schedule( sourceStorageName: string, options?: { projectId?: string | number; destinationStorageName } & Sudo & ShowExpanded, ): Promise>; } export class ProjectRepositoryStorageMoves< C extends boolean = false, > extends ResourceRepositoryStorageMoves { constructor(options: BaseResourceOptions) { /* istanbul ignore next */ super('projects', options); } }