import React from 'react';
export interface IdleTimeoutProps {
    /**
     *  The text for the dialog's 'close' button
     */
    closeButtonText?: string;
    /**
     * The text for the 'continue session' button in warning dialog.
     */
    continueSessionText?: string;
    /**
     * The heading text for the warning dialog.
     */
    heading?: string;
    /**
     * The text for the button that ends the session in warning dialog.
     */
    endSessionButtonText?: string;
    /**
     * The URL to direct to when the user intentionally ends the session.
     */
    endSessionUrl?: string;
    /**
     * A formatting function that returns the string to be used in the warning modal.
     * The formatting function is provided the timeTilTimeout (in minutes).
     */
    formatMessage?: (timeTilTimeout: number) => string | React.ReactNode;
    /**
     * Optional function that is called when the user chooses to keep the session alive. This function is called by the 'continue session' button or the 'close' button.
     * The IdleTimeout component will reset the countdown internally.
     */
    onSessionContinue?: (...args: any[]) => any;
    /**
     * Optional function that is called when the session is manually ended by user.
     * If not provided, the behavior of `onTimeout` will be used.
     */
    onSessionForcedEnd?: (...args: any[]) => any;
    /**
     * Function that is called when the timeout countdown reaches zero.
     */
    onTimeout: (...args: any[]) => any;
    /**
     * Describes if the button to manually end session should be shown in the warning dialog.
     */
    showSessionEndButton?: boolean;
    /**
     * Defines the amount of minutes of idle activity until the session is timed out
     */
    timeToTimeout: number;
    /**
     * Defines the amount of minutes of idle activity that will trigger the warning message.
     */
    timeToWarning: number;
}
export declare const IdleTimeout: ({ closeButtonText, continueSessionText, heading, endSessionButtonText, endSessionUrl, formatMessage, onSessionContinue, onSessionForcedEnd, onTimeout, showSessionEndButton, timeToTimeout, timeToWarning, }: IdleTimeoutProps) => JSX.Element;
export default IdleTimeout;
