UNPKG

@gt6/sdk

Version:

GT6 SDK for articles management - A comprehensive JavaScript/TypeScript library for managing articles, categories, and tags in GT6 platform

266 lines 8.3 kB
import { GT6Client } from '../core/client'; import { Article, Category, Tag, ArticlesByTagOptions, ArticlesByCategoryOptions, SingleTagResponse } from '../core/types'; export declare class ArticlesAPI { private client; constructor(client: GT6Client); /** * 1. 根据文章ID获取文章详情 */ getArticle(articleId: number | string): Promise<Article>; /** * 1.1 根据文章ID获取文章详情(平台使用) */ getArticle_p(articleId: number | string): Promise<Article>; /** * 2. 获取文章分类列表 */ getCategories(rootCategoryId?: number | string): Promise<Category[]>; /** * 2.1 获取文章分类列表(使用下级平台ID) */ getCategories_p(rootCategoryId_p?: number | string): Promise<Category[]>; /** * 2.2 获取文章分类列表(使用下级平台ID) */ getCategories_a(rootCategoryId?: number | string): Promise<Category[]>; /** * 3. 获取文章标签列表 */ getTags(tagAlias?: string): Promise<Tag[]>; /** * 3.1 获取文章标签列表(使用下级平台ID) */ getTags_p(tagAlias_p?: string): Promise<Tag[]>; /** * 3.2. 获取单个平台文章标签列表 */ getTags_p_single(tagId_p?: number): Promise<SingleTagResponse>; /** * 3.3. 获取单个平台文章标签的文章ID列表 */ getTagArticleIds_p(tagId_p?: number): Promise<number[]>; /** * 4. 根据分类ID获取文章列表 * 支持单个分类ID或分类ID数组 */ getArticlesByCategory(categoryId: number | number[], options?: ArticlesByCategoryOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 4.1 根据分类ID获取文章列表 * 支持单个分类ID或分类ID数组 */ getArticlesByCategory_p(categoryId: number | number[], options?: ArticlesByCategoryOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 4.2 根据分类ID获取文章列表 * 支持单个分类ID或分类ID数组 */ getArticlesByCategory_t(categoryId: number | number[], options?: ArticlesByCategoryOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 4.3 根据分类ID获取文章列表(使用大型分类静态文件) * 只支持单个分类ID,从大型分类静态文件获取文章ID列表 */ getArticlesByCategory_a(categoryId: number, options?: ArticlesByCategoryOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 5. 根据标签ID获取文章列表 * 支持单个标签ID或标签ID数组 */ getArticlesByTag(tagId: number | number[], options?: ArticlesByTagOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 5.1 根据标签ID获取文章列表 * 支持单个标签ID或标签ID数组 */ getArticlesByTag_p(tagId: number | number[], options?: ArticlesByTagOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 5.2 根据标签ID获取文章列表 * 支持单个标签ID或标签ID数组 */ getArticlesByTag_t(tagId: number | number[], options?: ArticlesByTagOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 5.3. 根据单个标签ID获取平台文章列表 * 使用getTags_p_single获取指定标签数据,然后获取文章详情 * @param tagId 单个标签ID * @param options 查询选项 */ getArticlesByTag_single(tagId: number, options?: ArticlesByTagOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; tag: Omit<SingleTagResponse, 'articleIds'>; }>; /** * 6. 根据分类ID获取该分类的层级路径 * 用于前端面包屑导航 */ getCategoryPath(categoryId: number): Promise<{ path: Category[]; currentCategory: Category | null; breadcrumbs: Array<{ categoryId: number; categoryName: string; level: number; }>; }>; /** * 7. 获取指定分类ID下的子分类 * 支持递归获取所有层级的子分类 */ getSubCategories(categoryId: number, options?: { recursive?: boolean; includeCurrent?: boolean; maxDepth?: number; }): Promise<{ subCategories: Category[]; currentCategory: Category | null; total: number; depth: number; }>; /****************************************************************************************** * 1.1 根据文章ID获取文章详情(平台用户都可以使用) */ getArticle_all(articleId: number | string): Promise<Article>; /** * 1.2 根据分类ID获取文章列表(平台用户都可以使用) */ getArticlesByCategory_all(categoryId: number, options?: ArticlesByCategoryOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 1.2.2 根据分类ID获取文章列表(支持搜索过滤) */ getArticlesByCategory_all_search(categoryId: number, searchOptions?: { page?: number; limit?: number; status?: string; regionIds?: string[]; priceRange?: { min?: number; max?: number; }; salaryRange?: { min?: number; max?: number; }; mileageRange?: { min?: number; max?: number; }; propertyAreaRange?: { min?: number; max?: number; }; plotAreaRange?: { min?: number; max?: number; }; tagIds?: number[]; requireAllTags?: boolean; }): Promise<{ articles: Article[]; total: number; page: number; limit: number; filteredTotal: number; }>; /** * 1.2.2 根据分类ID获取文章列表(支持搜索过滤) */ getArticlesByCategory_all_search01(categoryId: number | number[], searchOptions?: { page?: number; limit?: number; status?: string; regionIds?: string[]; priceRange?: { min?: number; max?: number; }; salaryRange?: { min?: number; max?: number; }; mileageRange?: { min?: number; max?: number; }; propertyAreaRange?: { min?: number; max?: number; }; plotAreaRange?: { min?: number; max?: number; }; tagIds?: number[]; requireAllTags?: boolean; }): Promise<{ articles: Article[]; total: number; page: number; limit: number; filteredTotal: number; }>; /** * 1.2.1 根据平台ID获取文章列表(平台用户都可以使用) */ getArticlesByplatform_all(platformId: number, options?: ArticlesByCategoryOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; }>; /** * 1.3 获取文章分类列表(平台用户都可以使用) */ getArticlesCategories_all(rootCategoryId?: number | string): Promise<Category[]>; /** * 1.4 根据单个标签ID获取平台文章列表 * 使用getTags_p_single获取指定标签数据,然后获取文章详情 * @param tagId 单个标签ID * @param options 查询选项 */ getArticlesByTag_single_all(tagId: number, options?: ArticlesByTagOptions): Promise<{ articles: Article[]; total: number; page: number; limit: number; tag: Omit<SingleTagResponse, 'articleIds'>; }>; } //# sourceMappingURL=articles.d.ts.map