import React, { PropsWithChildren, ReactNode } from 'react'; export type ConfigStrings = { 'animation.replay': string; 'footnote.backToContent': string; }; export declare enum HotspotLinksPosition { 'overlay' = 0, 'bottom' = 1, 'below' = 2, 'numbers' = 3, 'hidden' = 4 } export interface AssetsConfig { basePath?: string; replace?: RegExp; resizeParam?: string; } export interface Config { locale?: string; direction?: 'rtl' | 'ltr'; linkComponent?: React.ElementType; imageComponent?: React.ElementType; hotspotLinksPosition?: HotspotLinksPosition; assets?: AssetsConfig; icons?: { note?: React.ElementType; warning?: React.ElementType; important?: React.ElementType; tip?: React.ElementType; chevron?: React.ElementType; hotspot?: React.ElementType; }; disableVideo?: boolean; disableFootNoteLink?: boolean; strings?: Partial; } export interface ConfigValue { locale?: string; direction?: 'rtl' | 'ltr'; linkComponent?: React.ElementType; imageComponent?: React.ElementType; hotspotLinksPosition?: HotspotLinksPosition; assets: AssetsConfig; icons: { note?: React.ElementType; warning?: React.ElementType; important?: React.ElementType; tip?: React.ElementType; chevron?: React.ElementType; replay?: React.ElementType; hotspot?: React.ElementType; }; isRoot: boolean; parent?: ConfigValue; disableVideo?: boolean; disableFootNoteLink?: boolean; strings?: Partial; } export declare const ConfigContext: React.Context; export interface ConfigProviderProps extends PropsWithChildren { config?: Config; } export declare const ConfigProvider: ({ config: thisConfig, ...props }: ConfigProviderProps) => import("react/jsx-runtime").JSX.Element; export declare const ConfigConsumer: React.Consumer; export declare const withOptionalConfigProvider: (component: ReactNode, config?: Config) => import("react/jsx-runtime").JSX.Element;