/// <reference types="react" />
export declare const useFooterHeight: () => [number, import("react").Dispatch<import("react").SetStateAction<number>>], FooterHeightProvider: ({ children, initialValue, }: {
    children?: import("react").ReactNode;
    initialValue?: number | undefined;
}) => import("react").FunctionComponentElement<import("react").ProviderProps<[number, import("react").Dispatch<import("react").SetStateAction<number>>] | undefined>>;
export type FooterButtonVal = {
    onClick: () => void;
    disabled: boolean;
    isLoading: boolean;
    label: string;
    variant?: "primary" | "secondary";
} | null;
export declare const useFooterButton: () => [FooterButtonVal, import("react").Dispatch<import("react").SetStateAction<FooterButtonVal>>], FooterButtonProvider: ({ children, initialValue, }: {
    children?: import("react").ReactNode;
    initialValue?: FooterButtonVal | undefined;
}) => import("react").FunctionComponentElement<import("react").ProviderProps<[FooterButtonVal, import("react").Dispatch<import("react").SetStateAction<FooterButtonVal>>] | undefined>>;
export declare const useSyncFooterHeight: () => {
    containerRef: import("react").RefObject<HTMLDivElement>;
};
export declare const useRegisterFooterButton: (val: FooterButtonVal) => void;
