import { z } from 'zod'; import { AccelbyteSDK, ApiArgs } from '@accelbyte/sdk'; import React from 'react'; declare enum TopicStatus { VISIBLE = "VISIBLE", HIDDEN = "HIDDEN" } declare enum ArticleStatus { DRAFT = "DRAFT", PUBLISHED = "PUBLISHED" } declare const Topic: z.ZodObject<{ id: z.ZodString; name: z.ZodString; slug: z.ZodString; description: z.ZodOptional>; status: z.ZodEnum<[TopicStatus.HIDDEN, TopicStatus.VISIBLE]>; icon: z.ZodOptional>; displayOrder: z.ZodNumber; createdAt: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { status: TopicStatus; name: string; updatedAt: string; id: string; createdAt: string; slug: string; displayOrder: number; description?: string | null | undefined; icon?: string | null | undefined; }, { status: TopicStatus; name: string; updatedAt: string; id: string; createdAt: string; slug: string; displayOrder: number; description?: string | null | undefined; icon?: string | null | undefined; }>; interface Topic extends z.TypeOf { } declare const TopicList: z.ZodObject<{ data: z.ZodArray>; status: z.ZodEnum<[TopicStatus.HIDDEN, TopicStatus.VISIBLE]>; icon: z.ZodOptional>; displayOrder: z.ZodNumber; createdAt: z.ZodString; updatedAt: z.ZodString; }, "strip", z.ZodTypeAny, { status: TopicStatus; name: string; updatedAt: string; id: string; createdAt: string; slug: string; displayOrder: number; description?: string | null | undefined; icon?: string | null | undefined; }, { status: TopicStatus; name: string; updatedAt: string; id: string; createdAt: string; slug: string; displayOrder: number; description?: string | null | undefined; icon?: string | null | undefined; }>, "many">; paging: z.ZodObject<{ previous: z.ZodOptional>; next: z.ZodOptional>; }, "strip", z.ZodTypeAny, { previous?: string | null | undefined; next?: string | null | undefined; }, { previous?: string | null | undefined; next?: string | null | undefined; }>; }, "strip", z.ZodTypeAny, { data: { status: TopicStatus; name: string; updatedAt: string; id: string; createdAt: string; slug: string; displayOrder: number; description?: string | null | undefined; icon?: string | null | undefined; }[]; paging: { previous?: string | null | undefined; next?: string | null | undefined; }; }, { data: { status: TopicStatus; name: string; updatedAt: string; id: string; createdAt: string; slug: string; displayOrder: number; description?: string | null | undefined; icon?: string | null | undefined; }[]; paging: { previous?: string | null | undefined; next?: string | null | undefined; }; }>; interface TopicList extends z.TypeOf { } declare const Article: z.ZodObject<{ id: z.ZodString; title: z.ZodString; slug: z.ZodString; rawContent: z.ZodOptional>; htmlContent: z.ZodOptional>; status: z.ZodEnum<[ArticleStatus.DRAFT, ArticleStatus.PUBLISHED]>; metaDescription: z.ZodString; metaTitle: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; topic: z.ZodObject>; status: z.ZodEnum<[TopicStatus.HIDDEN, TopicStatus.VISIBLE]>; icon: z.ZodOptional>; displayOrder: z.ZodNumber; createdAt: z.ZodString; updatedAt: z.ZodString; }, "name" | "description" | "id" | "slug">, "strip", z.ZodTypeAny, { name: string; id: string; slug: string; description?: string | null | undefined; }, { name: string; id: string; slug: string; description?: string | null | undefined; }>; }, "strip", z.ZodTypeAny, { status: ArticleStatus; updatedAt: string; title: string; id: string; topic: { name: string; id: string; slug: string; description?: string | null | undefined; }; createdAt: string; slug: string; metaDescription: string; metaTitle: string; rawContent?: string | null | undefined; htmlContent?: string | null | undefined; }, { status: ArticleStatus; updatedAt: string; title: string; id: string; topic: { name: string; id: string; slug: string; description?: string | null | undefined; }; createdAt: string; slug: string; metaDescription: string; metaTitle: string; rawContent?: string | null | undefined; htmlContent?: string | null | undefined; }>; interface Article extends z.TypeOf { } declare const ArticleList: z.ZodObject<{ data: z.ZodArray>; htmlContent: z.ZodOptional>; status: z.ZodEnum<[ArticleStatus.DRAFT, ArticleStatus.PUBLISHED]>; metaDescription: z.ZodString; metaTitle: z.ZodString; createdAt: z.ZodString; updatedAt: z.ZodString; topic: z.ZodObject>; status: z.ZodEnum<[TopicStatus.HIDDEN, TopicStatus.VISIBLE]>; icon: z.ZodOptional>; displayOrder: z.ZodNumber; createdAt: z.ZodString; updatedAt: z.ZodString; }, "name" | "description" | "id" | "slug">, "strip", z.ZodTypeAny, { name: string; id: string; slug: string; description?: string | null | undefined; }, { name: string; id: string; slug: string; description?: string | null | undefined; }>; }, "strip", z.ZodTypeAny, { status: ArticleStatus; updatedAt: string; title: string; id: string; topic: { name: string; id: string; slug: string; description?: string | null | undefined; }; createdAt: string; slug: string; metaDescription: string; metaTitle: string; rawContent?: string | null | undefined; htmlContent?: string | null | undefined; }, { status: ArticleStatus; updatedAt: string; title: string; id: string; topic: { name: string; id: string; slug: string; description?: string | null | undefined; }; createdAt: string; slug: string; metaDescription: string; metaTitle: string; rawContent?: string | null | undefined; htmlContent?: string | null | undefined; }>, "many">; paging: z.ZodObject<{ previous: z.ZodOptional>; next: z.ZodOptional>; }, "strip", z.ZodTypeAny, { previous?: string | null | undefined; next?: string | null | undefined; }, { previous?: string | null | undefined; next?: string | null | undefined; }>; }, "strip", z.ZodTypeAny, { data: { status: ArticleStatus; updatedAt: string; title: string; id: string; topic: { name: string; id: string; slug: string; description?: string | null | undefined; }; createdAt: string; slug: string; metaDescription: string; metaTitle: string; rawContent?: string | null | undefined; htmlContent?: string | null | undefined; }[]; paging: { previous?: string | null | undefined; next?: string | null | undefined; }; }, { data: { status: ArticleStatus; updatedAt: string; title: string; id: string; topic: { name: string; id: string; slug: string; description?: string | null | undefined; }; createdAt: string; slug: string; metaDescription: string; metaTitle: string; rawContent?: string | null | undefined; htmlContent?: string | null | undefined; }[]; paging: { previous?: string | null | undefined; next?: string | null | undefined; }; }>; interface ArticleList extends z.TypeOf { } interface ArticlePayload extends Omit { rawContent: string; htmlContent: string; topicId: string; } interface SupportPageProps { manageArticleURL?: string; isAdminCanEdit?: boolean; initialTopics: TopicList; onLoadMore: (sdk: AccelbyteSDK) => void; isLoadingMore: boolean; } declare function SupportPageWidget(props: SupportPageProps): JSX.Element; declare function SupportTopicCardSkeleton(): JSX.Element; interface ArticlesPageProps { initialData: { topic: Topic | null; topics: TopicList; articles: ArticleList; }; isLoadingMoreTopic: boolean; onLoadmoreTopic: (sdk: AccelbyteSDK) => void; isLoadingMoreArticle: boolean; onLoadmoreArticle: (sdk: AccelbyteSDK) => void; } declare function ArticlesPageWidget(props: ArticlesPageProps): JSX.Element; interface ArticleDetailPageProps { initialArticle: Article | null; initialTopics: TopicList; isLoadingMoreTopic: boolean; onLoadmoreTopic: (sdk: AccelbyteSDK) => void; } declare function ArticleDetailPageWidget(props: ArticleDetailPageProps): JSX.Element; declare function ArticleDetailSkeleton(): JSX.Element; interface SupportCTAProps { CTAIcon?: React.ReactNode; } declare function SupportCTAWidget(props: SupportCTAProps): JSX.Element; declare function ArticleListPageWidget(): JSX.Element; declare function CreateArticlePageWidget(): JSX.Element; declare function EditArticlePageWidget({ slug }: { slug: string; }): JSX.Element; declare function TopicListWidget(): JSX.Element; declare function CreateTopicPageWidget(): JSX.Element; interface EditTopicPageWidgetProps { slug: string; } declare function EditTopicPageWidget({ slug }: EditTopicPageWidgetProps): JSX.Element; declare function ManageContentPageWidget({ children }: { children: React.ReactNode; }): JSX.Element; /** * NOT AUTO GENERATED */ declare function ArticlesApi(sdk: AccelbyteSDK, args?: ApiArgs): { getArticles: () => Promise; deleteArticle: (id: string) => Promise; getArticleById: (id: string) => Promise
; getArticleBySlug: (slug: string) => Promise
; createArticle: (payload: Omit) => Promise; updateArticle: (data: ArticlePayload) => Promise; getPublicArticles: (queryParams?: { topicId?: string | undefined; } | undefined) => Promise; getPublicArticleBySlug: (queryParams: { slug: string; }) => Promise
; }; declare function TopicsApi(sdk: AccelbyteSDK, args?: ApiArgs): { getTopics: () => Promise; getTopicById: (id: string) => Promise; getTopicBySlug: (slug: string) => Promise; createTopic: (data: any) => Promise; updateTopic: (id: string, data: any) => Promise; deleteTopic: (id: string) => Promise; getPublicTopics: (queryParams: { status?: keyof typeof TopicStatus; limit?: string; }) => Promise; getPublicTopicBySlug: (slug: string) => Promise; }; declare class PermissionUtils { static checkSupportAdminPermission: (sdk: AccelbyteSDK, accessToken?: string | undefined) => Promise; } declare type FetcherProps = { sdk: AccelbyteSDK; }; declare const supportPublicArticlesFetcher: ({ sdk, queryParams }: FetcherProps & { queryParams: { topicId?: string; limit?: string; offset?: string; }; }) => Promise; declare const supportPublicArticleBySlugFetcher: ({ sdk, queryParams }: FetcherProps & { queryParams: { slug: string; limit?: string; offset?: string; }; }) => Promise
; declare const supportPublicTopicsFetcher: ({ sdk, queryParams }: FetcherProps & { queryParams?: { status?: "VISIBLE" | "HIDDEN" | undefined; limit?: string | undefined; offset?: string | undefined; } | undefined; }) => Promise; declare const supportPublicTopicBySlugFetcher: ({ sdk, slug }: FetcherProps & { slug: string; }) => Promise; export { Article, ArticleDetailPageProps, ArticleDetailPageWidget, ArticleDetailSkeleton, ArticleListPageWidget, ArticlesApi, ArticlesPageProps, ArticlesPageWidget, CreateArticlePageWidget, CreateTopicPageWidget, EditArticlePageWidget, EditTopicPageWidget, EditTopicPageWidgetProps, FetcherProps, ManageContentPageWidget, PermissionUtils, SupportCTAProps, SupportCTAWidget, SupportPageProps, SupportPageWidget, SupportTopicCardSkeleton, Topic, TopicListWidget, TopicsApi, supportPublicArticleBySlugFetcher, supportPublicArticlesFetcher, supportPublicTopicBySlugFetcher, supportPublicTopicsFetcher };