import { CreateForumPostVoteResponse } from "../modules/forum_posts/Votes.js"; import { type ExtractValue } from "../util.js"; import Base from "./Base.js"; import type { CreateForumPostVoteData, ForumPost as ForumPostData, MarkForumPostData } from "../generated/types.js"; import type { EditForumPostOptions, MarkForumPostResponse } from "../modules/ForumPosts.js"; interface ForumPost extends ForumPostData { } /** * @category Models * * @schema {@link https://e621.wiki/#model-ForumPost ForumPost} * * @see {@link https://e621.wiki/#model-ForumPost Documentation} for more details. */ declare class ForumPost extends Base { /** * Delete Forum Post * * You must be Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Posts-deleteForumPost deleteForumPost} * * @see {@link https://e621.wiki/#operations-Forum_Posts-deleteForumPost Documentation} for more details. */ delete(): Promise; /** * Edit Forum Post * * You must be the creator of the forum post, or Admin+ to edit. Marked forum posts cannot be edited. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Posts-editForumPost editForumPost} * * @see {@link https://e621.wiki/#operations-Forum_Posts-editForumPost Documentation} for more details. */ edit(options: EditForumPostOptions): Promise; /** * Hide Forum Post * * You must be the creator or Moderator+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Posts-hideForumPost hideForumPost} * * @see {@link https://e621.wiki/#operations-Forum_Posts-hideForumPost Documentation} for more details. */ hide(): Promise; /** * Mark Forum Post * * You must be Moderator+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Posts-markForumPost markForumPost} * * @see {@link https://e621.wiki/#operations-Forum_Posts-markForumPost Documentation} for more details. */ mark(type: ExtractValue<"record_type", MarkForumPostData>): Promise; /** * Unhide Forum Post * * You must be Moderator+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Posts-unhideForumPost unhideForumPost} * * @see {@link https://e621.wiki/#operations-Forum_Posts-unhideForumPost Documentation} for more details. */ unhide(): Promise; /** * Delete Forum Post Vote * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Post_Votes-deleteForumPostVote deleteForumPostVote} * * @see {@link https://e621.wiki/#operations-Forum_Post_Votes-deleteForumPostVote Documentation} for more details. */ unvote(): Promise; /** * Create Forum Post Vote * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Forum_Post_Votes-createForumPostVote createForumPostVote} * * @see {@link https://e621.wiki/#operations-Forum_Post_Votes-createForumPostVote Documentation} for more details. */ vote(score: ExtractValue<"forum_post_vote[score]", CreateForumPostVoteData>): Promise; } export default ForumPost;