import { __rest } from "tslib";
import { jsx as _jsx } from "react/jsx-runtime";
import MuiSkeleton from '@mui/material/Skeleton';
import clsx from 'clsx';
import { forwardRef } from 'react';
/**
 * The Skeleton displays a placeholder preview of your content before the data gets loaded to reduce load-time frustration.
 *
 * Demos:
 *
 * - [Skeleton (Oxygen UI)](https://wso2.github.io/oxygen-ui/react/?path=/docs/feedback-skeleton)
 * - [Skeleton (MUI)](https://mui.com/material-ui/react-skeleton/)
 *
 * API:
 *
 * - [Skeleton API](https://mui.com/material-ui/api/skeleton/)
 *
 * @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 Skeleton component.
 * @param ref - The ref to be forwarded to the MuiSkeleton component.
 * @returns The rendered Skeleton component.
 */
const Skeleton = forwardRef((_a, ref) => {
    var { className } = _a, rest = __rest(_a, ["className"]);
    return (_jsx(MuiSkeleton, Object.assign({ ref: ref, className: clsx(
        /* @deprecated Use the PascalCase classname instead. https://github.com/wso2/oxygen-ui/issues/274 */
        'oxygen-skeleton', 'OxygenSkeleton-root', className) }, rest)));
});
export default Skeleton;
