import { assignInlineVars } from '@vanilla-extract/dynamic'; import React from 'react'; import type { BreakPoints } from '../../themes'; import baseTheme from '../../themes/base'; import { type RuntimeTokens } from '../../themes/makeTheme'; import { overdriveTokens } from '../../themes/theme.css'; import { type ColorOverrides } from './useColorOverrides'; type ThemeContract = typeof overdriveTokens; type PortalMountPoint = React.RefObject; export interface ProviderProps { /** The theme object to be used throughout the application */ theme?: typeof baseTheme; /** Custom breakpoints for responsive design */ breakpoints?: BreakPoints; /** When true, prevents applying theme styles at the body level */ noBodyLevelTheming?: boolean; /** Custom colour overrides for select theme tokens */ colorOverrides?: Partial; /** Reference to an HTML element where portals should be mounted */ portalMountPoint?: PortalMountPoint; /** * BCP47 locale string for React Aria components (DateInput, Calendar, etc.). * Controls date segment ordering, number formatting, and text direction. * * @example "en-AU" for Australian English (DD/MM/YYYY) * @example "de-DE" for German * @default Falls back to browser's navigator.language */ locale?: string; children?: React.ReactNode; } export interface ProviderContext extends Pick { themeClass: (typeof baseTheme)['themeRef']; themeName: string; overrideStyles: ReturnType; vars: ThemeContract; } export declare const useTheme: () => ProviderContext; export declare const useRuntimeTokens: () => RuntimeTokens; export declare const Provider: ({ breakpoints, children, colorOverrides, locale, noBodyLevelTheming, portalMountPoint, theme, }: ProviderProps) => React.JSX.Element; export declare const OverdriveProvider: React.NamedExoticComponent; export {}; //# sourceMappingURL=OverdriveProvider.d.ts.map