import * as _emotion_styled from '@emotion/styled';
import * as react from 'react';
import { ReactNode, ElementType } from 'react';
import * as _emotion_react from '@emotion/react';
import * as _emotion_react_jsx_runtime from '@emotion/react/jsx-runtime';

type FlexProps = {
    center?: boolean | undefined;
    justify?: "stretch" | "center" | "flex-start" | "start" | "flex-end" | "end" | "space-between" | undefined;
    align?: "stretch" | "center" | "flex-start" | "start" | "flex-end" | "end" | "space-between" | undefined;
    children?: ReactNode;
    as?: ElementType | undefined;
    asButtonType?: "button" | "submit" | undefined;
    column?: boolean | undefined;
    onClick?: (() => void) | undefined;
    disabled?: boolean | undefined;
    overflow?: "hidden" | "visible" | "scroll" | "auto" | undefined;
    whiteSpace?: "nowrap" | "normal" | "pre" | "pre-wrap" | "pre-line" | undefined;
    height?: number | "auto" | "100%" | undefined;
    width?: number | "auto" | "100%" | undefined;
    mt?: number | "auto" | undefined;
    mr?: number | "auto" | undefined;
    mb?: number | "auto" | undefined;
    ml?: number | "auto" | undefined;
    pt?: number | undefined;
    pr?: number | undefined;
    pb?: number | undefined;
    pl?: number | undefined;
    gap?: number | undefined;
    position?: "absolute" | "relative" | undefined;
    grow?: string | number | undefined;
};
declare function Flex({ center, justify: justifyProp, align: alignProp, column, children, onClick, disabled, gap, as, asButtonType, overflow, whiteSpace, mt, mr, mb, ml, pt, pr, pb, pl, height, width, position, grow, }: FlexProps): _emotion_react_jsx_runtime.JSX.Element;
type StyledFlexProps = {
    justify: NonNullable<FlexProps["justify"]>;
    align: NonNullable<FlexProps["align"]>;
    column: boolean;
    cursorProp: "pointer" | "not-allowed" | "initial" | "unset";
    overflowProp: FlexProps["overflow"];
    whiteSpace: FlexProps["whiteSpace"];
    mt: FlexProps["mt"];
    mr: FlexProps["mr"];
    mb: FlexProps["mb"];
    ml: FlexProps["ml"];
    pt: FlexProps["pt"];
    pr: FlexProps["pr"];
    pb: FlexProps["pb"];
    pl: FlexProps["pl"];
    gap: number | undefined;
    as?: ElementType | undefined;
    height?: FlexProps["height"];
    width?: FlexProps["width"];
    position?: FlexProps["position"];
    grow?: FlexProps["grow"];
};
declare const StyledFlex: _emotion_styled.StyledComponent<{
    theme?: _emotion_react.Theme;
    as?: React.ElementType;
} & StyledFlexProps, react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;

export { Flex, StyledFlex };
