import type { BaseResourceOptions } from '@gitbeaker/requester-utils'; import { ResourceAccessRequests } from '../templates'; import type { AccessRequestSchema } from '../templates/ResourceAccessRequests'; import type { GitlabAPIResponse, PaginationRequestOptions, PaginationTypes, ShowExpanded, Sudo, } from '../infrastructure'; import { AccessLevel } from '../constants'; export interface ProjectAccessRequests extends ResourceAccessRequests { all( projectId: string | number, options?: PaginationRequestOptions

& Sudo & ShowExpanded, ): Promise>; request( projectId: string | number, options?: Sudo & ShowExpanded, ): Promise>; approve( projectId: string | number, userId: number, options?: { accessLevel?: Exclude } & Sudo & ShowExpanded, ): Promise>; deny( groupId: string | number, userId: number, ): Promise>; } export class ProjectAccessRequests extends ResourceAccessRequests { constructor(options: BaseResourceOptions) { /* istanbul ignore next */ super('projects', options); } }