import type { ReactElement } from "react";
import React from "react";
import type { IconNames } from "@jobber/design";
export interface AnimatedSwitcherProps {
    /**
     * Determines when to switch the component to the `switchTo` prop.
     *
     * @default false
     */
    readonly switched: boolean;
    /**
     * The component that shows up when the `switched` prop is `false`
     */
    readonly initialChild: ReactElement;
    /**
     * The component that shows up when the `switched` prop is `true`
     */
    readonly switchTo: ReactElement;
    /**
     * Change the transition between 2 elements.
     */
    readonly type?: "slideFromBottom" | "fade";
}
export declare function AnimatedSwitcher({ initialChild, switched, switchTo, type, }: AnimatedSwitcherProps): React.JSX.Element;
export declare namespace AnimatedSwitcher {
    var Icon: ({ switchToIcon, switched, initialIcon, }: AnimatedSwitcherIconProps) => React.JSX.Element;
}
interface AnimatedSwitcherIconProps extends Pick<AnimatedSwitcherProps, "switched"> {
    readonly initialIcon: IconNames;
    readonly switchToIcon: IconNames;
}
export {};
