@anpdgovbr/shared-ui
Version:
Biblioteca de componentes React com MUI v7 e padrão GovBR-ds para ANPD
42 lines • 1.46 kB
TypeScript
import 'dayjs/locale/pt-br';
import { PropsWithChildren } from 'react';
/**
* Modo de exibição do provider.
*
* - 'theme': aplica o tema MUI (CSS-in-JS) fornecido por anpdTheme.
* - 'css': evita o tema MUI e permite uso direto de classes/estilos CSS (modo estrito).
*/
type Mode = 'theme' | 'css';
/**
* Forma do contexto do ANPDThemeProvider.
*
* - mode: modo atual do provider (theme | css).
* - toggle: função para alternar entre os modos.
*/
interface ANPDThemeContextType {
mode: Mode;
toggle: () => void;
}
/**
* Hook para acessar o modo do tema e a função de alternância.
*
* Retorna o objeto do contexto contendo `mode` e `toggle`.
*
* @example
* const { mode, toggle } = useANPDThemeMode()
*/
export declare const useANPDThemeMode: () => ANPDThemeContextType;
/**
* Provider que encapsula o ThemeProvider do MUI e injeta tokens globais.
*
* Comportamento:
* - Envolve os filhos com ThemeProvider usando `anpdTheme`.
* - Injeta `CssBaseline` e `GlobalStyles` com as variáveis definidas em `customTokens`.
* - Fornece um contexto para alternar entre os modos 'theme' e 'css'.
*
* @param children - Conteúdo que será renderizado dentro do provider.
* @returns JSX.Element que envolve os filhos com o tema e contexto do ANPD.
*/
export declare function ANPDThemeProvider({ children }: Readonly<PropsWithChildren>): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=ANPDThemeProvider.d.ts.map