UNPKG

@prezly/theme-kit-nextjs

Version:

Data layer and utility library for developing Prezly themes with NextJS

49 lines (48 loc) 4.07 kB
import type { Newsroom, NewsroomTheme, Story } from '@prezly/sdk'; import { ContentDelivery, Resolvable } from '@prezly/theme-kit-core'; import { type Configuration as CacheConfig } from './cache'; export declare namespace PrezlyAdapter { interface Configuration { accessToken: string; newsroom: Newsroom['uuid']; theme?: NewsroomTheme['id']; baseUrl?: string; headers?: Record<string, string>; pinning?: boolean; formats?: Story.FormatVersion[]; } interface Options { cache?: CacheConfiguration; fetch?: typeof fetch; } type CacheConfiguration = CacheConfig; function connect(config: Resolvable<Configuration>, { cache: cacheConfig, fetch }?: Options): { usePrezlyClient: () => { client: import("@prezly/sdk").PrezlyClient; contentDelivery: { newsroom(): Promise<Newsroom>; theme(): Promise<import("@prezly/sdk").NewsroomThemePreset> | undefined; themeSettings(): Promise<Record<string, any> | undefined>; languages(): Promise<import("@prezly/sdk").NewsroomLanguageSettings[]>; usedLanguages(): Promise<import("@prezly/sdk").NewsroomLanguageSettings[]>; locales(): Promise<import("@prezly/sdk").Culture.Code[]>; defaultLanguage(): Promise<import("@prezly/sdk").NewsroomLanguageSettings>; companyInformation(code?: import("@prezly/sdk").Culture["code"]): Promise<import("@prezly/sdk").NewsroomCompanyInformation>; notifications(locale: import("@prezly/sdk").Culture["code"]): Promise<import("@prezly/sdk").Notification<string>[]>; defaultLocale(): Promise<import("@prezly/sdk").Culture.Code>; language(code: import("@prezly/sdk").Culture["code"]): Promise<import("@prezly/sdk").NewsroomLanguageSettings | undefined>; languageOrDefault(code: import("@prezly/sdk").Culture["code"]): Promise<import("@prezly/sdk").NewsroomLanguageSettings>; categories(): Promise<import("@prezly/sdk").Category[]>; category(arg: import("@prezly/sdk").Category["id"] | import("@prezly/sdk").Category.Translation["slug"]): Promise<import("@prezly/sdk").Category | undefined>; translatedCategories(locale: import("@prezly/sdk").Culture["code"], categories?: import("@prezly/sdk").Category[]): Promise<import("@prezly/sdk").TranslatedCategory[]>; translatedCategory(locale: import("@prezly/sdk").Culture["code"], slug: import("@prezly/sdk").Category.Translation["slug"]): Promise<import("@prezly/sdk").TranslatedCategory | undefined>; featuredContacts(): Promise<import("@prezly/sdk").NewsroomContact[]>; galleries(params?: ContentDelivery.galleries.SearchParams): Promise<import("@prezly/sdk/dist/endpoints/NewsroomGalleries").ListResponse>; gallery(uuid: import("@prezly/sdk").NewsroomGallery["uuid"]): Promise<import("@prezly/sdk").NewsroomGallery | null>; stories<Include extends keyof Story.ExtraFields = never>(params: ContentDelivery.stories.SearchParams, options?: ContentDelivery.stories.IncludeOptions<Include>): Promise<import("@prezly/sdk/dist/endpoints/Stories").ListResponse<Story & Pick<Story.ExtraFields, Include>>>; allStories<Include extends keyof Story.ExtraFields = never>(params?: ContentDelivery.allStories.SearchParams, options?: ContentDelivery.allStories.IncludeOptions<Include>): Promise<(Story & Pick<Story.ExtraFields, Include>)[]>; story<Include extends keyof Story.ExtraFields = never>(params: ContentDelivery.story.SearchParams, options?: ContentDelivery.story.IncludeOptions<Include>): Promise<(import("@prezly/sdk").ExtendedStory & Pick<Story.ExtraFields, "thumbnail_image" | "content" | "header_image" | "preview_image" | "social_image" | "social_text" | "tag_names" | "attached_gallery_content" | "referenced_entities" | Include>) | null>; }; }; }; }