/**
 * Copyright IBM Corp. 2020, 2022
 *
 * 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 { OverflowMenuItem } from '@carbon/react';
import React, { PropsWithChildren, ReactNode } from 'react';
interface Action {
    renderIcon?: React.ElementType;
    onClick: () => void;
    iconDescription: string;
}
export interface WebTerminalProps extends PropsWithChildren {
    /**
     * Provide your own terminal component as children to show up in the web terminal
     */
    children: ReactNode;
    /**
     * An array of actions to be displayed in the web terminal header bar
     */
    actions?: readonly Action[];
    /**
     * Custom classname for additional styling of the web terminal
     */
    className?: string;
    /**
     * Icon description for the close button
     */
    closeIconDescription: string;
    /**
     * Array of objects for each documentation link. Each documentation link uses the prop types of OverflowMenuItems. See more: https://react.carbondesignsystem.com/?path=/docs/components-overflowmenu--default
     */
    documentationLinks?: readonly (typeof OverflowMenuItem)[];
    /**
     * Description for the documentation link overflow menu tooltip
     */
    documentationLinksIconDescription?: string;
    /**
     * Optionally pass if the web terminal should be open by default
     */
    isInitiallyOpen?: boolean;
    /**
     * Specifies aria label for Web terminal
     */
    webTerminalAriaLabel?: string;
}
/**
 * The `WebTerminal` is prompted by the user and is persistent until dismissed. The purpose of a web terminal is to provide users with the ability to type commands manually instead of using the GUI.
 */
export declare let WebTerminal: React.ForwardRefExoticComponent<WebTerminalProps & React.RefAttributes<HTMLDivElement>>;
export {};
