import { OrganizationConfiguration } from "../models/configuration/OrganizationConfiguration";
import { StoryConfiguration } from "../models/configuration/StoryConfiguration";
import { ApiService } from "../services/APIService";
import { ConsoleService } from "../services/ConsoleService";
import { FileService } from "../services/FileService";
import { TaskService } from "../services/TaskService";
import { BucketFileService } from "./../services/BucketService";
import { AuthenticationManager } from "./AuthenticationManager";
import { ConfigurationManager } from "./ConfigurationManager";
import { StripoApiService } from "../services/StripoAPIService";
export declare class SyncManager {
    file_service: FileService;
    configuration_manager: ConfigurationManager;
    auth_manager: AuthenticationManager;
    api_service: ApiService;
    stripo_api_service: StripoApiService;
    task_service: TaskService;
    console_service: ConsoleService;
    bucketService: BucketFileService;
    constructor(file_service: FileService, configuration_manager: ConfigurationManager, auth_manager: AuthenticationManager, api_service: ApiService, stripo_api_service: StripoApiService, task_service: TaskService, console_service: ConsoleService, bucketService: BucketFileService);
    private _getToken;
    private _getStripoToken;
    private _sleep;
    storyExists(story_key: string): Promise<boolean>;
    getStory(story_key: string): Promise<StoryConfiguration>;
    _getStoryExport(story_key: string): Promise<any>;
    _storyImport(story_key: string, story_data: object): Promise<any>;
    private _setStory;
    getOrganization(organization_key: string): Promise<OrganizationConfiguration>;
    getOrganizationSecrets(organization_key: string): Promise<Array<string>>;
    organizationSecretExists(organization_key: string, secret_key: string): Promise<any>;
    setOrganizationSecret(organization_key: string, secret_key: string, secret_value: string): Promise<any>;
    private _setOrganization;
    getOrganizationStories(organization_key: string): Promise<any>;
    _getOrganizationExport(organization_key: string): Promise<any>;
    _organizationImport(organization_key: string, organization_data: object): Promise<any>;
    private _setupCDN;
    pullOrganizations(organization_keys: string[]): Promise<any>;
    private _pullOrganization;
    private _getOrganizationPullTasks;
    pushOrganizations(organization_keys: string[], sync_id: string, cdn: boolean): Promise<any>;
    private _pushOrganization;
    private _getOrganizationPushTasks;
    private _getCDNPushTask;
    private validateFlashboardConfiguration;
    pullStories(story_keys: string[]): Promise<any>;
    pullStoryAs(story_key: string, as_key: string, as_org_key: string): Promise<any>;
    private _pullStory;
    private _pullAsset;
    private _getStoryPullTasks;
    private processTemplates;
    pullStoriesEmailTemplates(storyKeys: string[], stripoApiKey: string): Promise<number>;
    private _pullStoryEmailTemplateTask;
    pushStories(story_keys: string[], sync_id: string, cdn: boolean): Promise<any>;
    private _pushStory;
    private _pushAsset;
    private _getStoryPushTasks;
    checkStories(story_keys: string[]): Promise<any>;
    private _checkStory;
    private _getAsset;
    private _getCheckStoryTasks;
    validateStories(story_keys: string[]): Promise<any>;
    private _validateStory;
    private _validateAsset;
    private _getStoryValidateTasks;
    exportStories(story_keys: string[]): Promise<any>;
    private _exportStory;
    importStories(story_keys: string[]): Promise<any>;
    private _importStory;
    exportOrganizations(organization_keys: string[]): Promise<any>;
    private _exportOrganization;
    importOrganizations(organization_keys: string[]): Promise<any>;
    private _importOrganization;
}
