/*!
 * Copyright (c) 2024-present, Okta, Inc. and/or its affiliates. All rights reserved.
 * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
 *
 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *
 * See the License for the specific language governing permissions and limitations under the License.
 */
import { ReactElement, ReactNode } from "react";
import { DrawerProps } from "../../Drawer.js";
export type PageTemplateProps = {
    /**
     * The content of the layout. May be a `string` or any other `ReactNode` or array of `ReactNode`s. Will often be `Grid` objects.
     */
    children?: ReactNode;
    /**
     * A supplementary description to be situated in the layout header
     */
    description?: string;
    /**
     * The destination for a documentation `Link` to be situated in the layout header
     */
    documentationLink?: string;
    /**
     * The text for a documentation `Link` to be situated in the layout header
     */
    documentationText?: string;
    /**
     * An optional `Drawer` object. Can be of variant 'temporary' or 'persistent'.
     */
    drawer?: ReactElement<DrawerProps>;
    /**
     * When set to `true`, the layout expands past its max width of 1440px and spans the entire available screen width.
     */
    isFullWidth?: boolean;
    /**
     * An optional `Button` object to be situated in the layout header. Should almost always be of variant `primary`.
     */
    primaryCallToActionComponent?: ReactElement;
    /**
     * An optional `Button` object to be situated in the layout header, alongside the `callToActionPrimaryComponent`.
     */
    secondaryCallToActionComponent?: ReactElement;
    /**
     * An optional `Button` object to be situated in the layout header, alongside the other two `callToAction` components.
     */
    tertiaryCallToActionComponent?: ReactElement;
    /**
     * The title of the layout to be situated in the layout header
     */
    title?: string;
};
declare const MemoizedPageTemplate: import("react").MemoExoticComponent<({ children, description, documentationLink, documentationText, drawer, isFullWidth, primaryCallToActionComponent, secondaryCallToActionComponent, tertiaryCallToActionComponent, title, }: PageTemplateProps) => import("@emotion/react/jsx-runtime").JSX.Element>;
export { MemoizedPageTemplate as PageTemplate };
//# sourceMappingURL=PageTemplate.d.ts.map