UNPKG

flipper-plugin

Version:

Flipper Desktop plugin SDK and components

105 lines 4.15 kB
/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @format */ import React, { CSSProperties } from 'react'; import { PaddingProps, Spacing } from './theme'; export type SplitLayoutProps = { /** * If set, items will be centered over the orthogonal direction, if false (the default) items will be stretched. */ center?: boolean; gap?: Spacing; children: [React.ReactNode, React.ReactNode]; style?: CSSProperties; className?: string; } & SplitHorizontalResizableProps & SplitVerticalResizableProps; type SplitHorizontalResizableProps = { resizable: true; /** * Width describes the width of the resizable pane. To set a global width use the style attribute. */ width?: number; minWidth?: number; maxWidth?: number; } | {}; type SplitVerticalResizableProps = { resizable: true; /** * Width describes the width of the resizable pane. To set a global width use the style attribute. */ height?: number; minHeight?: number; maxHeight?: number; } | {}; /** * The Layout component divides all available screenspace over two components: * A fixed top (or left) component, and all remaining space to a bottom component. * * The main area will be scrollable by default, but if multiple containers are nested, * scrolling can be disabled by using `scrollable={false}` * * If initialSize is set, the fixed container will be made resizable * * Use Layout.Top / Right / Bottom / Left to indicate where the fixed element should live. */ export declare const Layout: { Top(props: SplitLayoutProps & SplitVerticalResizableProps): JSX.Element; Bottom(props: SplitLayoutProps & SplitVerticalResizableProps): JSX.Element; Left(props: SplitLayoutProps & SplitHorizontalResizableProps): JSX.Element; Right(props: SplitLayoutProps & SplitHorizontalResizableProps): JSX.Element; Container: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme | undefined; as?: React.ElementType<any> | undefined; } & { children?: React.ReactNode; className?: string | undefined; style?: React.CSSProperties | undefined; borderBottom?: boolean | undefined; borderTop?: boolean | undefined; borderRight?: boolean | undefined; borderLeft?: boolean | undefined; bordered?: boolean | undefined; rounded?: boolean | undefined; width?: number | undefined; height?: number | undefined; grow?: boolean | undefined; shrink?: boolean | undefined; gap?: Spacing; center?: boolean | undefined; } & PaddingProps, React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>; ScrollContainer: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & { horizontal?: boolean | undefined; vertical?: boolean | undefined; } & PaddingProps & React.RefAttributes<HTMLDivElement>>; Horizontal: import("@emotion/styled").StyledComponent<{ theme?: import("@emotion/react").Theme | undefined; as?: React.ElementType<any> | undefined; } & { children?: React.ReactNode; className?: string | undefined; style?: React.CSSProperties | undefined; borderBottom?: boolean | undefined; borderTop?: boolean | undefined; borderRight?: boolean | undefined; borderLeft?: boolean | undefined; bordered?: boolean | undefined; rounded?: boolean | undefined; width?: number | undefined; height?: number | undefined; grow?: boolean | undefined; shrink?: boolean | undefined; gap?: Spacing; center?: boolean | undefined; } & PaddingProps & React.ClassAttributes<HTMLDivElement> & React.HTMLAttributes<HTMLDivElement> & { children?: React.ReactNode; } & { theme?: import("@emotion/react").Theme | undefined; }, {}, {}>; }; export {}; //# sourceMappingURL=Layout.d.ts.map