import { __rest } from "tslib";
import { jsx as _jsx } from "react/jsx-runtime";
import MuiStack from '@mui/material/Stack';
import clsx from 'clsx';
import { forwardRef } from 'react';
/**
 * The Stack is a container component for arranging elements vertically or horizontally.
 *
 * Demos:
 *
 * - [Stack (Oxygen UI)](https://wso2.github.io/oxygen-ui/react/?path=/docs/layout-stack)
 * - [Stack (MUI)](https://mui.com/material-ui/react-stack/)
 *
 * API:
 *
 * - [Stack API](https://mui.com/material-ui/api/stack/)
 *
 * @remarks
 * - ✔️ Props of the native component are also available.
 * - ✅ `component` prop is supported.
 * - ✅ The `ref` is forwarded to the root element.
 *
 * @template C - The type of the component.
 * @param props - The props for the Stack component.
 * @param ref - The ref to be forwarded to the MuiStack component.
 * @returns The rendered Stack component.
 */
const Stack = forwardRef((_a, ref) => {
    var { className } = _a, rest = __rest(_a, ["className"]);
    return _jsx(MuiStack, Object.assign({ ref: ref, className: clsx('OxygenStack-root', className) }, rest));
});
export default Stack;
