Files
marianesaldana 80dbd947e5 Initial commit
2026-05-23 08:59:34 -06:00

61 lines
1.6 KiB
TypeScript

import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
import type { ColorValue } from 'react-native';
import type {
Float,
Int32,
WithDefault,
} from 'react-native/Libraries/Types/CodegenTypes';
import type { ViewProps } from './utils';
import type { UnsafeMixed } from './codegenUtils';
import { NumberProp } from '../lib/extract/types';
interface SvgNodeCommonProps {
name?: string;
opacity?: WithDefault<Float, 1.0>;
matrix?: ReadonlyArray<Float>;
mask?: string;
markerStart?: string;
markerMid?: string;
markerEnd?: string;
clipPath?: string;
clipRule?: WithDefault<Int32, 0>;
responsible?: boolean;
display?: string;
pointerEvents?: string;
}
type ColorStruct = Readonly<{
type?: WithDefault<Int32, -1>;
payload?: ColorValue;
brushRef?: string;
}>;
interface SvgRenderableCommonProps {
fill?: ColorStruct;
fillOpacity?: WithDefault<Float, 1.0>;
fillRule?: WithDefault<Int32, 1>;
stroke?: ColorStruct;
strokeOpacity?: WithDefault<Float, 1.0>;
strokeWidth?: UnsafeMixed<NumberProp>;
strokeLinecap?: WithDefault<Int32, 0>;
strokeLinejoin?: WithDefault<Int32, 0>;
strokeDasharray?: UnsafeMixed<ReadonlyArray<NumberProp> | NumberProp>;
strokeDashoffset?: Float;
strokeMiterlimit?: Float;
vectorEffect?: WithDefault<Int32, 0>;
propList?: ReadonlyArray<string>;
}
interface NativeProps
extends ViewProps,
SvgNodeCommonProps,
SvgRenderableCommonProps {
x1?: UnsafeMixed<NumberProp>;
y1?: UnsafeMixed<NumberProp>;
x2?: UnsafeMixed<NumberProp>;
y2?: UnsafeMixed<NumberProp>;
}
export default codegenNativeComponent<NativeProps>('RNSVGLine');