import type { BaseResourceOptions } from '@gitbeaker/requester-utils'; import { ResourceNotes } from '../templates'; import type { NoteSchema } from '../templates/ResourceNotes'; import type { GitlabAPIResponse, PaginationRequestOptions, PaginationTypes, ShowExpanded, Sudo, } from '../infrastructure'; export interface IssueNoteSchema extends NoteSchema { noteable_type: 'Issue'; } export interface IssueNotes extends ResourceNotes { all( projectId: string | number, issueIId: number, options?: { sort?: 'asc' | 'desc'; orderBy?: 'created_at' | 'updated_at'; } & PaginationRequestOptions

& Sudo & ShowExpanded, ): Promise>; create( projectId: string | number, issueIId: number, body: string, options?: { internal?: boolean; createdAt?: string } & Sudo & ShowExpanded, ): Promise>; edit( projectId: string | number, issueIId: number, noteId: number, options: { body?: string } & Sudo & ShowExpanded, ): Promise>; remove( projectId: string | number, issueIId: number, noteId: number, options?: Sudo, ): Promise>; show( projectId: string | number, issueIId: number, noteId: number, options?: Sudo & ShowExpanded, ): Promise>; } export class IssueNotes extends ResourceNotes { constructor(options: BaseResourceOptions) { /* istanbul ignore next */ super('projects', 'issues', options); } }