import * as React from 'react'; export declare type ExtendableProps = OverrideProps & Omit; export declare type As = React.ElementType; /** * Extract the props of a React element or component */ export declare type PropsOf = React.ComponentPropsWithoutRef & { as?: As; }; export declare type OmitCommonProps = Omit; export declare type RightJoinProps = OmitCommonProps & OverrideProps; export declare type MergeWithAs = RightJoinProps & RightJoinProps & { as?: AsComponent; }; export declare type ComponentWithAs = { (props: MergeWithAs, React.ComponentProps, Props, AsComponent>): JSX.Element; }; export interface DSComponent extends ComponentWithAs { } export declare type HTMLDSProps = Omit, T extends 'svg' ? 'ref' | 'children' : 'ref'> & {} & { as?: As; };