/**
 * Copyright IBM Corp. 2021, 2024
 *
 * 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 } from 'react';
interface CreateSidePanelProps {
    /**
     * Provide an optional class to be applied to the containing node.
     */
    className?: string;
    /**
     * The description of the CreateSidePanel serves to provide more information about the form within the panel.
     */
    description?: ReactNode;
    /**
     * Specifies a boolean for disabling or enabling the primary button. This is important for form validation
     * Returning `true` prevents the primary button from being clicked until required fields are completed.
     */
    disableSubmit?: boolean;
    /**
     * Specifies an optional field that provides a additional context for a form
     */
    formDescription?: ReactNode;
    /**
     * Specifies a required field that provides a title for a form
     */
    formTitle: ReactNode;
    /**
     * Unique identifier
     */
    id?: string;
    /**
     * Specifies an optional handler which is called when the CreateSidePanel
     * is closed.
     */
    onRequestClose?(): void;
    /**
     * Specifies an optional handler which is called when the CreateSidePanel
     * primary button is pressed.
     */
    onRequestSubmit?(): void;
    /**
     * Specifies whether the CreateSidePanel is open or not.
     */
    open: boolean;
    /**
     * Specifies the primary button's text in the modal.
     */
    primaryButtonText: string;
    /**
     * Specifies the secondary button's text in the modal.
     */
    secondaryButtonText: string;
    /**
     * This is the selector to the element that contains all of the page content that will shrink when the panel is a slide in.
     * This prop is required since create flows use the `slideIn` variant of the side panel.
     */
    selectorPageContent: string;
    /**
     * Specifies which DOM element in the form should be focused.
     */
    selectorPrimaryFocus: string;
    /**
     *  **Experimental:** Provide a `Slug` component to be rendered inside the `SidePanel` component
     */
    slug?: ReactNode;
    /**
     * The subtitle of the CreateSidePanel is optional and serves to provide more information about the modal.
     */
    subtitle?: ReactNode;
    /**
     * The title of the CreateSidePanel is usually the product or service name.
     */
    title: string;
}
/**
 * Use with medium complexity creations if the user needs page context. On-page content can be seen and interacted with.
 */
export declare let CreateSidePanel: React.ForwardRefExoticComponent<CreateSidePanelProps & {
    children?: ReactNode | undefined;
} & React.RefAttributes<HTMLDivElement>>;
export {};
