import * as React from 'react'; export interface UISrefActiveState { stateName: string; params: object; } /** @hidden */ export declare type AddStateInfoFn = (to: string, params: { [key: string]: any; }) => () => void; export declare const UISrefActiveContext: React.Context; export interface UISrefActiveProps { /** * The class string to apply when the state is active (i.e. `"menu-item-active"`) */ class?: string; /** * Whether the target state of the child [[UISref]] should match exactly the state or could also be a child state. * When set to `true`, if state params are supplied then they will be tested for strict equality against the current active url params, so all params must match with none missing and no extras. */ exact?: Boolean; /** * The component to apply the active class to. It should be a [[UISref]] or any node with [[UISref]] descendant */ children?: any; /** * Any class will be passed down to its child component */ className?: string; } /** * A component that applies an 'active' class when a [[UISref]] component's state is active. * * If you are using functional components, consider using the [[useSrefActive]] hook instead. * * This component works together with `[[UISref]]` child components. * It adds an active class to its child element when any of its children `[[UISref]]`'s state is active. * * This component can be used to highlight the active state in a navigation menu. * * ```jsx * * Home * * * // rendered when state is inactive * Home * * // rendered when state is active * Home * ``` * * Note: A `UISrefActive` will add the class if any child `UISref` is active. * This can be used to highlight a parent nav item if any nested child nav items are active. * * * ```jsx * *
* Admin * *
*
* * // rendered with either users or groups states are active *
* ``` */ export declare function UISrefActive({ children, className, class: classToApply, exact }: UISrefActiveProps): JSX.Element;