import type { Tree } from '@angular-devkit/schematics';
import * as ts from 'typescript';
import { DecoratorWithArg } from './ast';
/**
 * Returns true if `node` is the decorator of an Angular component
 * @param node
 */
export declare const isNgClassDecorator: (node: ts.Node) => node is DecoratorWithArg;
/**
 * Returns true if `node` is the decorator of an Otter component
 * @param node
 */
export declare const isO3rClassDecorator: (node: ts.Node) => node is DecoratorWithArg;
/**
 * Returns true if `classDeclaration` is an Otter component
 * @param classDeclaration
 */
export declare const isNgClassComponent: (classDeclaration: ts.ClassDeclaration) => boolean;
/**
 * Returns true if `classDeclaration` is an Otter component
 * @param classDeclaration
 */
export declare const isO3rClassComponent: (classDeclaration: ts.ClassDeclaration) => boolean;
export declare const askConfirmationToConvertComponent: () => Promise<boolean>;
export declare class NoOtterComponent extends Error {
    constructor(componentPath: string);
}
/**
 * Returns Otter component information
 * @param tree
 * @param componentPath
 */
export declare const getO3rComponentInfoOrThrowIfNotFound: (tree: Tree, componentPath: string) => {
    name: string;
    selector: string;
    standalone: boolean;
    templateRelativePath: string | undefined;
};
/**
 * Transformer factory to add imports into the angular component decorator
 * @param imports
 */
export declare const addImportsIntoComponentDecoratorTransformerFactory: (imports: string[]) => ts.TransformerFactory<ts.Node>;
//# sourceMappingURL=component.d.ts.map