import { type AxiosProxyConfig } from 'axios'; export interface Pagination { start: number; count: number; } export interface Filter { compare: string; key: string; value: string; } export interface Siblings { fields: string[]; next?: boolean; prev?: boolean; loop?: boolean; } export interface Cache { wpCache: boolean; localCache: boolean; } export interface Lang { lang: string; i18n: boolean; } export declare enum WP_MODES { LANGUAGES = "languages", SITE_MAP = "sitemap", PAGE = "page", CHILDREN = "children", ARCHIVE = "archive", EXTRA = "extra", MENU = "menu", TAXONOMY = "taxonomy", SEND = "send", SUBSCRIBE = "subscribe", ATTACHMENTS = "attachments" } export declare enum SEND_MODES { 'ONCE' = 0, 'SIMULTANEOUSLY' = 1, 'AWAIT' = 2 } export interface DemetraOptions { endpoint: string; uploadEndpoint: string; site: string; lang: string; version: number; debug: boolean; cacheMaxAge: number; maxItems: number; proxy: AxiosProxyConfig | false; } export interface FetchPageOptions extends Cache, Lang { type: string; siblings: Siblings; } export interface FetchChildrenOptions extends Cache, Lang { } export interface FetchArchiveOptions extends Cache, Lang { fields: string[]; pagination: Pagination; filters: Filter[]; taxonomy: { slug: string; id: string; }; } export interface FetchMenuOptions extends Cache, Lang { } export interface FetchExtraOptions extends Cache, Lang { } export interface FetchTaxonomyOptions extends Cache, Lang { } export interface FetchLanguagesOptions extends Cache, Lang { } export interface FetchSitemapOptions extends Cache { filter_lang: boolean; } export interface FetchAttachmentsOptions extends Cache, Lang { } export interface DemetraRequestGlobalOptions { id: string | number | string[] | number[]; mode: WP_MODES; site: string; version: number; } export type DemetraRequestLanguagesOptions = DemetraRequestGlobalOptions & FetchLanguagesOptions; export type DemetraRequestSiteMapOptions = DemetraRequestGlobalOptions & FetchSitemapOptions; export type DemetraRequestPageOptions = DemetraRequestGlobalOptions & FetchPageOptions; export type DemetraRequestChildrenOptions = DemetraRequestGlobalOptions & FetchChildrenOptions; export type DemetraRequestArchiveOptions = DemetraRequestGlobalOptions & FetchArchiveOptions; export type DemetraRequestExtraOptions = DemetraRequestGlobalOptions & FetchExtraOptions; export type DemetraRequestMenuOptions = DemetraRequestGlobalOptions & FetchMenuOptions; export type DemetraRequestTaxonomyOptions = DemetraRequestGlobalOptions & FetchTaxonomyOptions; export type DemetraRequestAttachmentsOptions = DemetraRequestGlobalOptions & FetchAttachmentsOptions; export interface WpData { status: { code: number; message: string; cache: boolean; }; data: object; } export type WpFile = { status: { code: number; message: string; }; data: { uploadId: number; url: string; path: string; }; }[]; //# sourceMappingURL=declarations.d.ts.map