import { StoryAction } from "./../models/configuration/support/StoryAction";
import { ActionTemplateConfiguration } from "./../models/configuration/ActionTemplateConfiguration";
import { ConfigurationManager } from "./ConfigurationManager";
import { TaskService } from "../services/TaskService";
import { FileService } from "../services/FileService";
import { StoryConfiguration } from "../models/configuration/StoryConfiguration";
import { StoryTemplateConfiguration } from "../models/configuration/StoryTemplateConfiguration";
import { ConfigurationFileService } from "../services/ConfigurationFileService";
import { ConsoleService } from "../services/ConsoleService";
export declare class TemplateManager {
    file_service: FileService;
    configuration_manager: ConfigurationManager;
    task_service: TaskService;
    private console_service;
    constructor(file_service: FileService, configuration_manager: ConfigurationManager, task_service: TaskService, console_service: ConsoleService);
    storyTemplatesDirectory: string;
    actionTemplatesDirectory: string;
    private _templateKeys;
    get templateKeys(): string[];
    set templateKeys(keys: string[]);
    getActionTemplateDirectory(template_key: string): string;
    _actionTemplateConfigAccessor(template_key: string): ConfigurationFileService<ActionTemplateConfiguration>;
    hasActionTemplateConfig(template_key: string): boolean;
    getActionTemplateConfig(template_key: string): ActionTemplateConfiguration;
    hasStoryTemplateConfig(template_key: string): boolean;
    getStoryTemplateDirectory(story_key: string): string;
    getStoryTemplateConfig(template_key: string): StoryTemplateConfiguration;
    _storyTemplateConfigAccessor(template_key: string): ConfigurationFileService<StoryTemplateConfiguration>;
    scaffoldStory(storyKey: string, organizationKey: string, templateKey: string, extra_args?: string[]): Promise<any>;
    scaffoldEpisode(story_key: string, episode_key: string, template_key: string): void;
    private _scaffoldEpisodeAsset;
    scaffoldState(story_key: string, state_key: string, state_type: string): void;
    scaffoldScene(story_key: string, episode_key: string, template_key: string, scene_key: string, scene_id: string): void;
    scaffoldTemplate(story_key: string, template_key: string, template_type: string): void;
    addActionTemplates(story_config: StoryConfiguration, action: StoryAction): void;
}
