import { BaseResource } from '@gitbeaker/requester-utils'; import { RequestHelper } from '../infrastructure'; import type { BaseRequestOptions, GitlabAPIResponse, ShowExpanded, Sudo } from '../infrastructure'; export interface CodeSuggestionSchema extends Record { access_token: string; expires_in: number; created_at: number; } export interface CodeCompletionSchema extends Record { id: string; model: { engine: string; name: string; }; object: string; created: number; choices: Array<{ text: string; index: number; finish_reason: string; }>; } export class CodeSuggestions extends BaseResource { createAccessToken( options?: Sudo & ShowExpanded, ): Promise> { return RequestHelper.post()(this, 'code_suggestions/tokens', options); } generateCompletion( options?: BaseRequestOptions, ): Promise> { return RequestHelper.post()( this, 'code_suggestions/completions', options, ); } }