diff --git a/src_types/common/reactVelo.d.ts b/src_types/common/reactVelo.d.ts index 2662607b..d6970d0f 100644 --- a/src_types/common/reactVelo.d.ts +++ b/src_types/common/reactVelo.d.ts @@ -47,23 +47,12 @@ type ReactVeloOutputElementsMap = { type VeloTypeNames = Extract; -// That's "hardcoded" Typescript convention for types for "regular" jsx elements, i.e. what goes as string to React.createElment("string") -declare namespace JSX { - interface Element {} - interface IntrinsicAttributes {} - interface ElementAttributesProperty { props: {}; } - interface ElementChildrenAttribute { children: {}; } - - // https://www.typescriptlang.org/docs/handbook/jsx.html#type-checking - // An intrinsic element always begins with a lowercase letter, and a value-based element always begins with an uppercase letter. - type IntrinsicElementsMap = { - [key in VeloTypeNames as Uncapitalize]: TypeNameToSdkType[key] extends $w.Repeater ? ReactVeloRepeaterType : ReactifiedVeloType - } - - interface IntrinsicElements extends IntrinsicElementsMap {} +type ReactVeloOutputTypesMap = { + [key in VeloTypeNames as Uncapitalize]: TypeNameToSdkType[key] extends $w.Repeater ? ReactVeloRepeaterType : ReactifiedVeloType } declare module '@wix/react-velo' { export function render(rootElement: JSX.Element, $w: Function): void; export const W: ReactVeloOutputElementsMap; + export const V: ReactVeloOutputTypesMap; }