import { App } from 'vue'; import { ComponentOptionsMixin } from 'vue'; import { ComponentProvideOptions } from 'vue'; import { ComputedRef } from 'vue'; import { DefineComponent } from 'vue'; import { PublicProps } from 'vue'; import { Ref } from 'vue'; declare type __VLS_Props = { colors?: AccessibilityColorConfig; locale?: LocaleCode; messages?: Partial>>; useGlobalI18n?: boolean; theme?: ThemeMode; }; export declare interface AccessibilityColorConfig { primaryColor?: string; primaryHoverColor?: string; linkHighlightBg?: string; linkHighlightBorder?: string; readingHighlightBg?: string; readingHighlightBorder?: string; } export declare interface AccessibilityConfig { colors?: AccessibilityColorConfig; locale?: LocaleCode; messages?: Partial>>; useGlobalI18n?: boolean; theme?: ThemeMode; } export declare type AccessibilityLocaleMessages = { [key in LocaleCode]: AccessibilityMessages; }; export declare const AccessibilityMenu: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, { theme: ThemeMode; }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>; declare const AccessibilityMenuPlugin: { install(app: App): void; }; export { AccessibilityMenuPlugin } export default AccessibilityMenuPlugin; export declare interface AccessibilityMessages { title: string; subtitle: string; close: string; fontSize: string; increaseFontSize: string; decreaseFontSize: string; resetFontSize: string; dyslexicFont: string; highContrast: string; highlightLinks: string; screenReader: string; readFullPage: string; stopReading: string; readOnHover: string; readOnHoverDesc: string; readOnSelect: string; readOnSelectDesc: string; resetAll: string; infoTitle: string; infoText: string; language: string; speechNotSupported: string; ariaOpenMenu: string; ariaCloseMenu: string; ariaToggleDyslexic: string; ariaToggleContrast: string; ariaToggleLinks: string; ariaToggleHover: string; ariaToggleSelect: string; } export declare const availableLocales: { code: LocaleCode; name: string; }[]; export declare const defaultLocale: LocaleCode; export declare type LocaleCode = 'es' | 'en'; export declare const messages: AccessibilityLocaleMessages; export declare type ThemeMode = 'light' | 'dark' | 'auto'; export declare const ttsLangMap: Record; export declare const useAccessibility: (config?: AccessibilityConfig) => { fontSize: Ref; isDyslexicFont: Ref; isHighContrast: Ref; isHighlightLinks: Ref; readOnHover: Ref; readOnSelect: Ref; config: ComputedRef< { fontSize: number; isDyslexicFont: boolean; isHighContrast: boolean; isHighlightLinks: boolean; readOnHover: boolean; readOnSelect: boolean; colors: { primaryColor: string; primaryHoverColor: string; linkHighlightBg: string; linkHighlightBorder: string; readingHighlightBg: string; readingHighlightBorder: string; }; locale: LocaleCode | undefined; messages: Partial>> | undefined; useGlobalI18n: boolean | undefined; theme: ThemeMode | undefined; }>; colors: Ref< { primaryColor: string; primaryHoverColor: string; linkHighlightBg: string; linkHighlightBorder: string; readingHighlightBg: string; readingHighlightBorder: string; }, Required | { primaryColor: string; primaryHoverColor: string; linkHighlightBg: string; linkHighlightBorder: string; readingHighlightBg: string; readingHighlightBorder: string; }>; }; export declare const useI18n: (options?: UseI18nOptions) => { locale: ComputedRef; t: (key: keyof AccessibilityMessages) => string; setLocale: (locale: LocaleCode) => void; ttsLang: ComputedRef; }; export declare interface UseI18nOptions { locale?: LocaleCode; messages?: Partial>>; useGlobalI18n?: boolean; } export { }