import ts from "typescript"; import { Injector } from "@bonbons/di"; import { ImportGenerator } from "../../core"; export declare class BasicHelper { protected injector: Injector; get __engine(): typeof import("typescript"); constructor(injector: Injector); createPropertyAccess(object: string, propertyChain: string): ts.PropertyAccessExpression; /** * 创建字面量(不包括函数) * @param value 任意值,不支持循环引用 */ createLiteral(value: unknown): ts.StringLiteral | ts.NumericLiteral | (ts.BooleanLiteral & ts.Token) | (ts.BooleanLiteral & ts.Token) | ts.ObjectLiteralExpression | ts.ArrayLiteralExpression; /** * 创建命名空间导入 * * @example * // import * as React from 'react' * createNamespaceImport('react', 'React') * @param {string} moduleName 模块名 * @param {string} namespace 命名空间 */ createNamespaceImport(moduleName: string, namespace: string): ImportGenerator; /** * 创建命名空间导入请使用 createNamespaceImport * * @example * // import React, { useState, useCallback as UC } from 'react' * createImport('react', 'React', ['useState', ['useCallback', 'UC']]) * @param {string} moduleName 模块名 * @param {string | undefined} defaultName 默认导出 * @param {Array} named 具名导出,单个具名导出项为类型为[string, string]时会创建别名 */ createImport(moduleName: string, defaultName?: string, named?: Array): ImportGenerator; createObjectLiteral(object: Record): ts.ObjectLiteralExpression; createArrayLiteral(array: unknown[]): ts.ArrayLiteralExpression; createFunctionCall(name: string, parameters: (string | ts.Expression)[]): ts.CallExpression; createObjectAttr(value: Record): ts.ObjectLiteralExpression; createSyntaxExpression(expression: string): ts.Expression; }