UNPKG

1.94 kBTypeScriptView Raw
1import { SeoOptions } from "./seo";
2import { ExtendedRequest, ExtendedResponse, SiteMeta, LastModifiedByLocale, Middleware } from "./common";
3export interface BablicOptions {
4 siteId: string;
5 rootUrl?: string;
6 locale?: string;
7 forceLocale?: string;
8 subDir?: boolean;
9 subDirBase?: string;
10 subDirOptional?: boolean;
11 onReady?: () => void;
12 seo?: SeoOptions;
13 folders?: {
14 [locale: string]: string;
15 };
16 meta?: SiteMeta;
17 snippet?: string;
18 keywords?: {
19 [urlKeyword: string]: {
20 [locale: string]: string;
21 };
22 };
23 lastModified?: LastModifiedByLocale;
24}
25export interface SiteData {
26 id?: string;
27 error?: string;
28 snippet: string;
29 meta: SiteMeta;
30 keywords?: {
31 [urlKeyword: string]: {
32 [locale: string]: string;
33 };
34 };
35 lastModified: LastModifiedByLocale;
36}
37export declare const BackwardCompSEOOptions: {
38 useCache: string[];
39 defaultCache: string[];
40};
41export declare class BablicSDK {
42 meta: SiteMeta;
43 lastModified: LastModifiedByLocale;
44 snippet: string;
45 private options;
46 private LOCALE_REGEX;
47 private seoMiddleware;
48 private keywordsByLocale;
49 private reverseKeywordByLocale;
50 private seoHandler;
51 handle: Middleware;
52 constructor(options: BablicOptions);
53 getSiteMeta(cbk: (e?: Error) => void): void;
54 saveSiteMeta(data: SiteData): void;
55 snippetUrl(): string;
56 getLocale(req: ExtendedRequest): string;
57 loadSiteMeta(cbk: (e?: Error) => void): void;
58 handleBablicCallback(req: ExtendedRequest, res: ExtendedResponse): void;
59 getLink(locale: string, url: string): string;
60 altTags(url: string, locale: string): string;
61 purgeCache(): Promise<void>;
62 private generateOriginalPath;
63 private generateTranslatedPath;
64 private handler;
65 private processKeywords;
66}