import { CSSObject } from '@emotion/react';
import React from 'react';
import { ThemeName } from '../../theme';
export interface DesignSystemProviderProps {
    /**
     * The UI theme to be applied to all components inside this provider. Can be "default" or "dark".
     */
    theme?: ThemeName;
    /**
     * Set this to `true` to enable CSS animations for all Du Bois components inside this provider.
     * This is purely a visual enhancement, and is not necessary for the functionality of any component.
     */
    enableAnimation?: boolean;
    /** Use this to configure the base zIndex for Du Bois. We use this to stack our internal elements
     * correctly, and to ensure that our internal elements are always on top of any other elements. This
     * should be a number >= 1000.
     */
    zIndexBase?: number;
    /**
     * Use this to allow the application to provide the element used as a container for all "popup" components.
     */
    getPopupContainer?: (trigger?: HTMLElement) => HTMLElement;
}
export interface DuboisContextType {
    enableAnimation: boolean;
    theme: ThemeName;
    getPrefixCls: (suffix?: string) => string;
    getPopupContainer?: (trigger?: HTMLElement) => HTMLElement;
}
export declare const DesignSystemContext: React.Context<DuboisContextType>;
export declare function getAnimationCss(enableAnimation: boolean): CSSObject;
export declare const DesignSystemProvider: React.FC<DesignSystemProviderProps>;
//# sourceMappingURL=DesignSystemProvider.d.ts.map