import { BaseResource } from '@gitbeaker/requester-utils'; import { RequestHelper, endpoint } from '../infrastructure'; import type { GitlabAPIResponse, PaginationRequestOptions, PaginationTypes, ShowExpanded, Sudo, } from '../infrastructure'; export interface FeatureFlagUserListSchema extends Record { name: string; user_xids: string; id: number; iid: number; project_id: string | number; created_at: string; updated_at: string; } export class FeatureFlagUserLists extends BaseResource { all( projectId: string | number, options?: { search?: string } & PaginationRequestOptions

& Sudo & ShowExpanded, ): Promise> { return RequestHelper.get()( this, endpoint`projects/${projectId}/feature_flags_user_lists`, options, ); } create( projectId: string | number, name: string, userXids: string, options?: Sudo & ShowExpanded, ): Promise> { return RequestHelper.post()( this, endpoint`projects/${projectId}/feature_flags_user_lists`, { name, userXids, ...options, }, ); } edit( projectId: string | number, featureFlagUserListIId: string | number, options?: { name?: string; userXIds?: string } & Sudo & ShowExpanded, ): Promise> { return RequestHelper.put()( this, endpoint`projects/${projectId}/feature_flags_user_lists/${featureFlagUserListIId}`, options, ); } remove( projectId: string | number, featureFlagUserListIId: string | number, options?: Sudo & ShowExpanded, ): Promise> { return RequestHelper.del()( this, endpoint`projects/${projectId}/feature_flags_user_lists/${featureFlagUserListIId}`, options, ); } show( projectId: string | number, featureFlagUserListIId: string | number, options?: Sudo & ShowExpanded, ): Promise> { return RequestHelper.get()( this, endpoint`projects/${projectId}/feature_flags_user_lists/${featureFlagUserListIId}`, options, ); } }