/**
 * Copyright IBM Corp. 2024, 2025
 *
 * This source code is licensed under the Apache-2.0 license found in the
 * LICENSE file in the root directory of this source tree.
 */
import React, { ReactNode, RefObject } from 'react';
import { InterstitialScreenHeaderProps } from './InterstitialScreenHeader';
import { InterstitialScreenBodyProps } from './InterstitialScreenBody';
import { InterstitialScreenFooterProps } from './InterstitialScreenFooter';
import { ActionType } from './context';
export interface InterstitialScreenProps {
    /**
     * Provide the contents of the InterstitialScreen.
     */
    children: ReactNode;
    /**
     * Provide an optional class to be applied to the containing node.
     */
    className?: string;
    /**
     * The aria label applied to the Interstitial Screen component
     */
    ariaLabel?: string;
    /**
     * Specifies whether the component is shown as a full-screen
     * experience, else it is shown as a modal by default.
     */
    isFullScreen?: boolean;
    /**
     * Specifies whether the component is currently open.
     */
    open?: boolean;
    /**
     * Function to call when the close button is clicked.
     */
    onClose?: (value: ActionType) => void;
    /**
     * Provide a ref to return focus to once the interstitial is closed.
     */
    launcherButtonRef?: RefObject<HTMLElement>;
}
export type InterstitialScreenComponent = React.ForwardRefExoticComponent<InterstitialScreenProps & React.RefAttributes<HTMLDivElement>> & {
    Header: React.FC<InterstitialScreenHeaderProps>;
    Body: React.FC<InterstitialScreenBodyProps>;
    Footer: React.FC<InterstitialScreenFooterProps>;
};
/**
 * InterstitialScreen can be a full page or an overlay, and are
 * shown on the first time a user accesses a new experience
 * (e.g. upon first login or first time opening a page where a
 * newly purchased capability is presented).
 */
export declare const InterstitialScreen: InterstitialScreenComponent;
//# sourceMappingURL=InterstitialScreen.d.ts.map