import type { BaseResourceOptions } from '@gitbeaker/requester-utils'; import { ResourceDiscussions } from '../templates'; import type { DiscussionNoteSchema, DiscussionSchema } from '../templates/ResourceDiscussions'; import type { GitlabAPIResponse, PaginationRequestOptions, PaginationTypes, ShowExpanded, Sudo, } from '../infrastructure'; export interface EpicDiscussions extends ResourceDiscussions { addNote( groupId: string | number, epicId: number, discussionId: string, body: string, options?: { createdAt?: string } & Sudo & ShowExpanded, ): Promise>; all( groupId: string | number, epicId: number, options?: PaginationRequestOptions

& Sudo & ShowExpanded, ): Promise>; create( groupId: string | number, epicId: number, body: string, options?: { createdAt?: string } & Sudo & ShowExpanded, ): Promise>; editNote( groupId: string | number, epicId: number, discussionId: string, noteId: number, options: Sudo & ShowExpanded & { body: string }, ): Promise>; removeNote( groupId: string | number, epicId: number, discussionId: string, noteId: number, options?: Sudo & ShowExpanded, ): Promise>; show( groupId: string | number, epicId: number, discussionId: string, options?: Sudo & ShowExpanded, ): Promise>; } export class EpicDiscussions extends ResourceDiscussions { constructor(options: BaseResourceOptions) { /* istanbul ignore next */ super('groups', 'epics', options); } }