/**
 * Get the filename without extension for a given path
 * @param path to a file
 * @returns filename without extension
 */
export declare function getFileName(path: string): string;
/**
 * Removes a file or directory if it exists
 * @param path to a file or directory
 */
export declare function rm(path: string): void;
/**
 * Creates a folder, if it does not exist
 * @remark not real mkdir -p! only one level! To have multi-level we should use the package node-mkdirp
 * @param path folder path
 */
export declare function mkdirp(path: string): void;
export interface FileNamingOptions {
    /** The name of the entity (function, action, widget, etc.) to be converted into a file name. */
    name: string;
    /** The suffix to be appended to the file name. */
    suffix: string;
    /** A flag indicating whether nested directories are allowed in the file name. */
    allowNested?: boolean;
    /** Flag that indicates whether the filename should be formatted to a kebab case */
    overrideNameWithKebabCase?: boolean;
}
/** Converts the provided name into a file name by appending the provided suffix and optionally allowing nested directories. */
export declare function nameToFileName({ name, suffix, allowNested, overrideNameWithKebabCase, }: FileNamingOptions): string;
interface TSConfig {
    compilerOptions: {
        typeRoots: string[];
        [key: string]: unknown;
    };
    [key: string]: unknown;
}
/**
 * @param directory where tsconfig file will be located
 * @param tsconfig tsconfig to be updated
 * @returns tsconfig that has updated typeRoots property
 */
export declare function updateTsConfigTypeRoots(dir: string, tsconfig: TSConfig): TSConfig;
export {};
