import * as React from "react"; import { FCReturn, JSXIntrinsicElementProps, ReactComponentConstructor, ReactDivAttr } from "../../../typings/shared"; export type AspectRatioValue = "16x9" | "9x16" | "2x1" | "1x2" | "4x3" | "3x4" | "1x1"; interface AspectRatioBaseIsolatedProps { ratio?: AspectRatioValue | undefined; } type SafeProps

= Omit; interface AspectRatioBaseProps extends AspectRatioBaseIsolatedProps { children?: React.ReactNode | undefined; className?: string | undefined; } export type AspectRatioDefaultProps = & AspectRatioBaseProps & ReactDivAttr & { as?: undefined; }; export type AspectRatioIntrinsicProps = & AspectRatioBaseProps & SafeProps> & { as: K; }; export type AspectRatioCustomComponentProps< C extends ReactComponentConstructor, > = C extends ReactComponentConstructor ? & AspectRatioBaseProps & SafeProps

& { as: C; } : never; declare function AspectRatio(props: AspectRatioDefaultProps): FCReturn; declare function AspectRatio( props: AspectRatioIntrinsicProps, ): FCReturn; declare function AspectRatio>( props: AspectRatioCustomComponentProps, ): FCReturn; export default AspectRatio;