import PostSet from "../models/PostSet.js"; import { GetResponse, type TransformDataBodyToOptions, type TransformDataQueryToOptions } from "../util.js"; import Base from "./Base.js"; import type { CreatePostSetData, EditPostSetData, ListPostSetsForSelectResponses, SearchPostSetsData } from "../generated/types.js"; /** @category Modules/Types */ export interface CreatePostSetOptions extends TransformDataBodyToOptions { } /** @category Modules/Types */ export interface EditPostSetOptions extends TransformDataBodyToOptions { } /** @category Modules/Types */ export interface SearchPostSetsOptions extends TransformDataQueryToOptions { } /** @category Modules/Types */ export interface ListPostSetsForSelectResponse extends GetResponse { } /** @category Modules */ export default class PostSets extends Base { /** * Add Posts To Post Set * * You must be the owner of the set, a maintainer (if public), or Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-addPostsToPostSet addPostsToPostSet} * * @see {@link https://e621.wiki/#operations-Post_Sets-addPostsToPostSet Documentation} for more details. */ addPosts(id: number, post_ids: Array): Promise; /** * Create Post Set * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-createPostSet createPostSet} * * @see {@link https://e621.wiki/#operations-Post_Sets-createPostSet Documentation} for more details. */ create(options: CreatePostSetOptions): Promise; /** * Delete Post Set * * You must be the owner of the set, or Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-deletePostSet deletePostSet} * * @see {@link https://e621.wiki/#operations-Post_Sets-deletePostSet Documentation} for more details. */ delete(id: number): Promise; /** * Edit Post Set * * You must be the owner of the set, or Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-editPostSet editPostSet} * * @see {@link https://e621.wiki/#operations-Post_Sets-editPostSet Documentation} for more details. */ edit(id: number, options: EditPostSetOptions): Promise; /** * List Post Sets For Select * * You must be the owner of the set, a maintainer (if public), or Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-listPostSetsForSelect listPostSetsForSelect} * * @see {@link https://e621.wiki/#operations-Post_Sets-listPostSetsForSelect Documentation} for more details. */ forSelect(): Promise; /** * Get Post Set * * You must be Moderator+ if the set is not public. * * @operationId {@link https://e621.wiki/#operations-Post_Sets-getPostSet getPostSet} * * @see {@link https://e621.wiki/#operations-Post_Sets-getPostSet Documentation} for more details. */ get(id: number): Promise; /** * Remove Posts From Post Set * * You must be the owner of the set, a maintainer (if public), or Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-removePostsFromPostSet removePostsFromPostSet} * * @see {@link https://e621.wiki/#operations-Post_Sets-removePostsFromPostSet Documentation} for more details. */ removePosts(id: number, post_ids: Array): Promise; /** * Search Post Sets * * @operationId {@link https://e621.wiki/#operations-Post_Sets-searchPostSets searchPostSets} * * @see {@link https://e621.wiki/#operations-Post_Sets-searchPostSets Documentation} for more details. */ search(options?: SearchPostSetsOptions): Promise>; /** * Update Post Set Posts * * You must be the owner of the set, a maintainer (if public), or Admin+. * * @requiresApiKeyAuth * * @operationId {@link https://e621.wiki/#operations-Post_Sets-updatePostSetPosts updatePostSetPosts} * * @see {@link https://e621.wiki/#operations-Post_Sets-updatePostSetPosts Documentation} for more details. */ updatePosts(id: number, post_ids: Array): Promise; }