import { TableDefinition } from './support/extendedPropertyDefinition';
import { WorkflowGroup, WorkflowGroupRole, WorkflowGroupRoleChanges } from './support/group';
import { AutomatedCreation, AutomatedCreationChanges, AutomatedCreationDetails, Diagram, DiagramDetails, JobTemplate, JobTemplateDetails, UpgradedDiagram } from './support/jobTemplate';
import { Lookup } from './support/lookup';
import { SavedChart, SavedSearch } from './support/query';
import { TemplateDescription, TemplateDetails } from './support/template';
import { WorkflowUser, WorkflowUserDetails } from './support/user';
import { Setting } from './support/setting';
import { BaseManager } from './base-manager';
import { ArcadeExpressionDetails } from './support/arcade';
import { TestWebRequest, WebRequestResponse } from './support/web-request';
import { ExportDataDetails, ImportDataDetails, WorkflowItemDetails } from './support/workflowItem';
export declare class ConfigurationManager extends BaseManager {
    private notificationManager;
    constructor();
    private getNotificationManager;
    getWorkflowItemDetails(): Promise<WorkflowItemDetails>;
    getUser(username: string): Promise<WorkflowUserDetails>;
    getUsers(): Promise<WorkflowUser[]>;
    getGroups(): Promise<WorkflowGroup[]>;
    getAllGroupRoles(): Promise<WorkflowGroupRole[]>;
    getGroupRoles(groupId: string): Promise<string[]>;
    getGroupRole(roleName: string): Promise<WorkflowGroupRole>;
    updateGroupRoles(groupId: string, changes: WorkflowGroupRoleChanges): Promise<boolean>;
    updateOrCreateGroupRole(groupRole: WorkflowGroupRole): Promise<boolean>;
    deleteGroupRole(roleName: string): Promise<boolean>;
    getJobTemplate(jobTemplateId: string): Promise<JobTemplateDetails>;
    updateJobTemplate(jobTemplateId: string, jobTemplate: JobTemplateDetails): Promise<boolean>;
    createJobTemplate(jobTemplate: JobTemplateDetails): Promise<string>;
    private toJobTemplateDetails;
    private toRestJobTemplate;
    deleteJobTemplate(jobTemplateId: string): Promise<boolean>;
    getJobTemplates(): Promise<JobTemplate[]>;
    shareJobTemplate(jobTemplateId: string, groupIds: string[]): Promise<boolean>;
    getJobTemplateShareDetails(jobTemplateId: string): Promise<string[]>;
    getTableDefinitions(): Promise<TableDefinition[]>;
    getDiagrams(draft?: boolean): Promise<Diagram[]>;
    getDiagram(diagramId: string): Promise<DiagramDetails>;
    getDiagramByVersion(diagramId: string, diagramVersion: number): Promise<DiagramDetails>;
    getUpgradedDiagramVersion(diagramId: string, diagramVersion: number): Promise<UpgradedDiagram>;
    private toDiagramDetails;
    createDiagram(diagram: DiagramDetails): Promise<string>;
    updateDiagram(diagram: DiagramDetails, deleteDraft: boolean): Promise<boolean>;
    deleteDiagram(diagramId: string): Promise<boolean>;
    deleteDiagramByVersion(diagramId: string, diagramVersion: number): Promise<boolean>;
    getSettings(): Promise<Setting[]>;
    updateSettings(settings: Setting[]): Promise<boolean>;
    deleteSettings(name: string): Promise<boolean>;
    getSavedSearches(): Promise<SavedSearch[]>;
    private getSearchesAndCharts;
    createSavedSearch(newSearch: SavedSearch): Promise<string>;
    updateSavedSearch(savedSearch: SavedSearch): Promise<boolean>;
    deleteSavedSearch(searchId: string): Promise<boolean>;
    shareSavedSearch(searchId: string, groupIds: string[]): Promise<boolean>;
    getSavedSearchSharingDetails(searchId: string): Promise<string[]>;
    createSavedChart(newChart: SavedChart): Promise<string>;
    updateSavedChart(savedChart: SavedChart): Promise<boolean>;
    getSavedCharts(): Promise<SavedChart[]>;
    deleteSavedChart(searchId: string): Promise<boolean>;
    getSavedChartSharingDetails(chartId: string): Promise<string[]>;
    shareSavedChart(searchId: string, groupIds: string[]): Promise<boolean>;
    getTemplates(templateType: string): Promise<TemplateDescription[]>;
    getTemplate(templateId: string, templateType: string): Promise<TemplateDetails>;
    createTemplate(newTemplate: TemplateDetails, templateType: string): Promise<string>;
    updateTemplate(template: TemplateDetails, templateType: string): Promise<boolean>;
    deleteTemplate(templateId: string, templateType: string): Promise<boolean>;
    getLookups(lookupType: string): Promise<Lookup[]>;
    updateLookups(lookupType: string, lookups: Lookup[]): Promise<boolean>;
    getAutomatedCreations(jobTemplateId: string): Promise<AutomatedCreation[]>;
    getAutomatedCreationDetails(jobTemplateId: string, automationId: string): Promise<AutomatedCreationDetails>;
    updateAutomatedCreation(jobTemplateId: string, body: AutomatedCreationChanges): Promise<boolean>;
    evaluateArcade(params: ArcadeExpressionDetails): Promise<string>;
    evaluateWebRequest(params: TestWebRequest): Promise<WebRequestResponse>;
    exportWorkflowConfiguration(body: ExportDataDetails): Promise<Blob>;
    private handleErrorAndReject;
    exportWorkflowConfigurationAsync(body: ExportDataDetails): Promise<Blob>;
    private getExportFile;
    importWorkflowConfiguration(params: ImportDataDetails): Promise<boolean>;
    importWorkflowConfigurationAsync(params: ImportDataDetails): Promise<boolean>;
}
