import IFile from "../storage/IFile";
import { IEventHandler } from "ste-events";
import ActionSet from "../actions/ActionSet";
import Project from "../app/Project";
export default class ActionSetManager {
    private _jsonFile?;
    private _jsFile?;
    private _tsFile?;
    private _functionFile?;
    private _isLoaded;
    private _actionSet?;
    private _project;
    private _actionSetData?;
    get actionSet(): ActionSet;
    private _onLoaded;
    constructor(project: Project, actionSet?: ActionSet);
    get isLoaded(): boolean;
    get jsonFile(): IFile | undefined;
    get onLoaded(): import("ste-events").IEvent<ActionSetManager, ActionSetManager>;
    get name(): string;
    set name(newName: string);
    set jsonFile(newFile: IFile | undefined);
    load(): Promise<void>;
    private ensureJsFile;
    private getScriptBaseName;
    private ensureTsFile;
    private ensureFunctionFile;
    persist(project: Project): Promise<boolean>;
    static ensureOnFile(file: IFile, project: Project, loadHandler?: IEventHandler<ActionSetManager, ActionSetManager>): Promise<ActionSetManager>;
}
