import { IBindingElementService } from "./i-binding-element-service"; import { BindingElement } from "typescript"; import { IPrinter } from "@wessberg/typescript-ast-util"; import { IPropertyNameService } from "../property-name/i-property-name-service"; import { IBindingNameService } from "../binding-name/i-binding-name-service"; /** * A service for working with BindingElements */ export declare class BindingElementService implements IBindingElementService { private readonly printer; private readonly propertyNameService; private readonly bindingNameService; constructor(printer: IPrinter, propertyNameService: IPropertyNameService, bindingNameService: IBindingNameService); /** * Gets the name of a BindingElement * @param {BindingElement} bindingElement * @returns {string} */ getName(bindingElement: BindingElement): string; /** * Gets the propertyName name of a BindingElement * @param {BindingElement} bindingElement * @returns {string} */ getPropertyName(bindingElement: BindingElement): string | undefined; /** * Gets the stringified initializer expression of a BindingElement * @param {BindingElement} bindingElement * @returns {string} */ getInitializer(bindingElement: BindingElement): string | undefined; /** * Returns true if the given BindingElement has a dotDotDotToken * @param {BindingElement} bindingElement * @returns {boolean} */ isRestSpread(bindingElement: BindingElement): boolean; }