import { templateTypesType } from '../../types';
/**
 *
 */
export default class File {
    protected pathSource: string;
    protected pathDestination: string;
    protected readonly encoding = "utf8";
    protected readonly fileAccess = 493;
    protected readonly folderAccess = 493;
    protected readonly types: {
        [k in templateTypesType]: {
            path: string;
            template: string;
        };
    };
    protected readonly staticFiles: string[];
    /**
     *
     * @param pathSource
     * @param pathDestination
     */
    constructor(pathSource: string, pathDestination: string);
    /**
     *
     */
    createFolders(): Promise<void>;
    /**
     *
     */
    copyStaticFiles(): Promise<void>;
    /**
     *
     * @param type
     */
    read(type: templateTypesType): Promise<string>;
    /**
     *
     * @param folder
     * @param name
     * @param data
     */
    write(type: templateTypesType, name: string, data: string): Promise<void>;
    /**
     *
     * @param type
     * @param name
     */
    exists(type: templateTypesType, name: string): Promise<boolean>;
}
