import type { Location, Modifier, TypeRefSchema } from '@teambit/semantics.entities.semantic-schema'; import { DocSchema, ParameterSchema, SchemaNode } from '@teambit/semantics.entities.semantic-schema'; /** * function-like can be a function, method, arrow-function, variable-function, etc. */ export declare class ReactSchema extends SchemaNode { readonly location: Location; readonly name: string; readonly modifiers: Modifier[]; readonly typeParams?: string[] | undefined; readonly returnType: SchemaNode; readonly props?: ParameterSchema; readonly doc?: DocSchema; readonly signature?: string | undefined; readonly displaySchemaName = "React"; constructor(location: Location, name: string, returnType: TypeRefSchema, props?: ParameterSchema, signature?: string, modifiers?: Modifier[], doc?: DocSchema, typeParams?: string[] | undefined); getNodes(): (SchemaNode | ParameterSchema)[]; toString(options?: { color?: boolean; }): string; toFullSignature(options?: { showDocs?: boolean; }): string; isDeprecated(): boolean; isPrivate(): boolean; private modifiersToString; toObject(): { name: string; props: { name: string; type: Record; isOptional: boolean; defaultValue: any; description: string | undefined; objectBindingNodes: Record[] | undefined; isSpread: boolean; } | undefined; returnType: Record; signature: string | undefined; modifiers: Modifier[]; doc: { __schema: string; name: string | undefined; location: Location; signature: string | undefined; raw: string; comment: string | undefined; tags: { __schema: string; location: Location; name: string | undefined; signature: string | undefined; tagName: string; comment: string | undefined; }[] | undefined; } | undefined; typeParams: string[] | undefined; }; static fromObject(obj: Record): ReactSchema; }