import { AgentGroupSkeleton, type AgentSkeleton, type AgentType } from '../api/AgentApi';
import { State } from '../shared/State';
import { type ExportMetaData } from './OpsTypes';
export type Agent = {
    /**
     * Create an empty agent export template
     * @returns {AgentExportInterface} an empty agent export template
     */
    createAgentExportTemplate(): AgentExportInterface;
    /**
     * Read all agents.
     * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of agent objects
     */
    readAgents(globalConfig: boolean): Promise<AgentSkeleton[]>;
    /**
     * Read agent
     * @param {string} agentId agent id/name
     * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an agent object
     */
    readAgent(agentId: string, globalConfig: boolean): Promise<AgentSkeleton>;
    /**
     * Create an empty agent group export template
     * @returns {AgentGroupExportInterface} an empty agent export template
     */
    createAgentGroupExportTemplate(): AgentGroupExportInterface;
    /**
     * Read agent group by id
     * @param {string} groupId Group id
     * @returns {Promise<AgentGroupSkeleton>} a promise that resolves to a agent group object
     */
    readAgentGroup(groupId: string): Promise<AgentGroupSkeleton>;
    /**
     * Read all agent groups.
     * @returns {Promise<AgentGroupSkeleton[]>} a promise that resolves to an array of agent group objects
     */
    readAgentGroups(): Promise<AgentGroupSkeleton[]>;
    /**
     * Export a single agent group by id. The response can be saved to file as is.
     * @param {string} groupId Group id
     * @returns {Promise<AgentGroupExportInterface>} Promise resolving to a AgentGroupExportInterface object.
     */
    exportAgentGroup(groupId: string): Promise<AgentGroupExportInterface>;
    /**
     * Export all agent groups. The response can be saved to file as is.
     * @returns {Promise<AgentGroupExportInterface>} Promise resolving to a AgentGroupExportInterface object.
     */
    exportAgentGroups(): Promise<AgentGroupExportInterface>;
    /**
     * Read agent by type and id
     * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)
     * @param {string} agentId agent id/name
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an agent object
     */
    readAgentByTypeAndId(agentType: AgentType, agentId: string): Promise<AgentSkeleton>;
    /**
     * Read identity gateway agents
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of IdentityGatewayAgent objects
     */
    readIdentityGatewayAgents(): Promise<AgentSkeleton[]>;
    /**
     * Read identity gateway agent
     * @param {string} gatewayId gateway id
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
     */
    readIdentityGatewayAgent(gatewayId: string): Promise<AgentSkeleton>;
    /**
     * Create identity gateway agent
     * @param {string} gatewayId gateway id
     * @param {AgentSkeleton} gatewayData IdentityGatewayAgent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
     */
    createIdentityGatewayAgent(gatewayId: string, gatewayData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Update or create identity gateway agent
     * @param {string} gatewayId gateway id
     * @param {AgentSkeleton} gatewayData IdentityGatewayAgent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
     */
    updateIdentityGatewayAgent(gatewayId: string, gatewayData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Read java agents
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of J2EEAgent objects
     */
    readJavaAgents(): Promise<AgentSkeleton[]>;
    /**
     * Read java agent
     * @param {string} agentId java agent id
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an J2EEAgent object
     */
    readJavaAgent(agentId: string): Promise<AgentSkeleton>;
    /**
     * Put java agent
     * @param {string} agentId java agent id
     * @param {AgentSkeleton} agentData java agent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an java agent object
     */
    createJavaAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Put java agent
     * @param {string} agentId java agent id
     * @param {AgentSkeleton} agentData java agent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an java agent object
     */
    updateJavaAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Read web agents
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of WebAgent objects
     */
    readWebAgents(): Promise<AgentSkeleton[]>;
    /**
     * Read web agent
     * @param {string} agentId web agent id
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an WebAgent object
     */
    readWebAgent(agentId: string): Promise<AgentSkeleton>;
    /**
     * Create web agent
     * @param {string} agentId web agent id
     * @param {AgentSkeleton} agentData WebAgent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an WebAgent object
     */
    createWebAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Update or create web agent
     * @param {string} agentId web agent id
     * @param {AgentSkeleton} agentData WebAgent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an WebAgent object
     */
    updateWebAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Export all agents. The response can be saved to file as is.
     * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportAgents(globalConfig: boolean): Promise<AgentExportInterface>;
    /**
     * Export all identity gateway agents. The response can be saved to file as is.
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportIdentityGatewayAgents(): Promise<AgentExportInterface>;
    /**
     * Export all java agents. The response can be saved to file as is.
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportJavaAgents(): Promise<AgentExportInterface>;
    /**
     * Export all web agents. The response can be saved to file as is.
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportWebAgents(): Promise<AgentExportInterface>;
    /**
     * Export agent. The response can be saved to file as is.
     * @param agentId agent id/name
     * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportAgent(agentId: string, globalConfig: boolean): Promise<AgentExportInterface>;
    /**
     * Export identity gateway agent. The response can be saved to file as is.
     * @param agentId agent id/name
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportIdentityGatewayAgent(agentId: string): Promise<AgentExportInterface>;
    /**
     * Export java agent. The response can be saved to file as is.
     * @param agentId agent id/name
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportJavaAgent(agentId: string): Promise<AgentExportInterface>;
    /**
     * Export web agent. The response can be saved to file as is.
     * @param agentId agent id/name
     * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
     */
    exportWebAgent(agentId: string): Promise<AgentExportInterface>;
    /**
     * Import agents. The import data is usually read from an agent export file.
     * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
     * @param {AgentExportInterface} importData agent import data.
     * @returns {Promise<AgentSkeleton[]>} The agents that were imported.
     */
    importAgents(importData: AgentExportInterface, globalConfig: boolean): Promise<AgentSkeleton[]>;
    /**
     * Import agents groups. The import data is usually read from an agent group export file.
     * @param {AgentExportInterface} importData agent import data.
     * @returns {Promise<AgentGroupSkeleton[]>} The agent groups that were imported.
     */
    importAgentGroups(importData: AgentGroupExportInterface): Promise<AgentGroupSkeleton[]>;
    /**
     * Import identity gateway agents. The import data is usually read from an agent export file.
     * @param {AgentExportInterface} importData agent import data.
     */
    importIdentityGatewayAgents(importData: AgentExportInterface): Promise<void>;
    /**
     * Import java agents. The import data is usually read from an agent export file.
     * @param {AgentExportInterface} importData agent import data.
     */
    importJavaAgents(importData: AgentExportInterface): Promise<void>;
    /**
     * Import web agents. The import data is usually read from an agent export file.
     * @param {AgentExportInterface} importData agent import data.
     */
    importWebAgents(importData: AgentExportInterface): Promise<void>;
    /**
     * Import agent. The import data is usually read from an agent export file.
     * @param {string} agentId agent id/name
     * @param {AgentExportInterface} importData agent import data.
     * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
     */
    importAgent(agentId: string, importData: AgentExportInterface, globalConfig: boolean): Promise<AgentSkeleton>;
    /**
     * Import agent group. The import data is usually read from an agent group export file.
     * @param {string} agentGroupId agent group id/name
     * @param {AgentGroupExportInterface} importData agent group import data.
     * @returns {Promise<AgentGroupSkeleton>} Promise resolving to an agent group object.
     */
    importAgentGroup(agentGroupId: string, importData: AgentGroupExportInterface): Promise<AgentGroupSkeleton>;
    /**
     * Import identity gateway agent. The import data is usually read from an agent export file.
     * @param {string} agentId agent id/name
     * @param {AgentExportInterface} importData agent import data.
     * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
     */
    importIdentityGatewayAgent(agentId: string, importData: AgentExportInterface): Promise<AgentSkeleton>;
    /**
     * Import java agent. The import data is usually read from an agent export file.
     * @param {string} agentId agent id/name
     * @param {AgentExportInterface} importData agent import data.
     * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
     */
    importJavaAgent(agentId: string, importData: AgentExportInterface): Promise<AgentSkeleton>;
    /**
     * Import java agent. The import data is usually read from an agent export file.
     * @param {string} agentId agent id/name
     * @param {AgentExportInterface} importData agent import data.
     * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
     */
    importWebAgent(agentId: string, importData: AgentExportInterface): Promise<AgentSkeleton>;
    /**
     * Delete all agents
     */
    deleteAgents(): Promise<void>;
    /**
     * Delete agent
     * @param agentId agent id/name
     */
    deleteAgent(agentId: string): Promise<void>;
    /**
     * Delete all identity gateway agents
     */
    deleteIdentityGatewayAgents(): Promise<void>;
    /**
     * Delete identity gateway agent
     * @param agentId agent id/name
     */
    deleteIdentityGatewayAgent(agentId: string): Promise<void>;
    /**
     * Delete all java agents
     */
    deleteJavaAgents(): Promise<void>;
    /**
     * Delete java agent
     * @param agentId agent id/name
     */
    deleteJavaAgent(agentId: string): Promise<void>;
    /**
     * Delete all web agents
     */
    deleteWebAgents(): Promise<void>;
    /**
     * Delete web agent
     * @param agentId agent id/name
     */
    deleteWebAgent(agentId: string): Promise<void>;
    /**
     * Get all agents.
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of agent objects
     * @deprecated since v2.0.0 use {@link Agent.readAgents | readAgents} instead
     * ```javascript
     * readAgents(): Promise<AgentSkeleton[]>
     * ```
     * @group Deprecated
     */
    getAgents(): Promise<AgentSkeleton[]>;
    /**
     * Get agent
     * @param {string} agentId agent id/name
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an agent object
     * @deprecated since v2.0.0 use {@link Agent.readAgent | readAgent} instead
     * ```javascript
     * readAgent(agentId: string): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    getAgent(agentId: string): Promise<AgentSkeleton>;
    /**
     * Get agent by type and id
     * @param {string} agentType agent type (IdentityGatewayAgent, J2EEAgent, WebAgent)
     * @param {string} agentId agent id/name
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an agent object
     * @deprecated since v2.0.0 use {@link Agent.readAgentByTypeAndId | readAgentByTypeAndId} instead
     * ```javascript
     * readAgentByTypeAndId(agentType: AgentType, agentId: string): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    getAgentByTypeAndId(agentType: AgentType, agentId: string): Promise<AgentSkeleton>;
    /**
     * Get identity gateway agents
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of IdentityGatewayAgent objects
     * @deprecated since v2.0.0 use {@link Agent.readIdentityGatewayAgents | readIdentityGatewayAgents} instead
     * ```javascript
     * readIdentityGatewayAgents(): Promise<AgentSkeleton[]>
     * ```
     * @group Deprecated
     */
    getIdentityGatewayAgents(): Promise<AgentSkeleton[]>;
    /**
     * Get identity gateway agent
     * @param {string} gatewayId gateway id
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
     * @deprecated since v2.0.0 use {@link Agent.readIdentityGatewayAgent | readIdentityGatewayAgent} instead
     * ```javascript
     * readIdentityGatewayAgent(gatewayId: string): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    getIdentityGatewayAgent(gatewayId: string): Promise<AgentSkeleton>;
    /**
     * Update or create identity gateway agent
     * @param {string} gatewayId gateway id
     * @param {AgentSkeleton} gatewayData IdentityGatewayAgent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
     * @deprecated since v2.0.0 use {@link Agent.updateIdentityGatewayAgent | updateIdentityGatewayAgent} or {@link Agent.createIdentityGatewayAgent | createIdentityGatewayAgent} instead
     * ```javascript
     * updateIdentityGatewayAgent(gatewayId: string, gatewayData: AgentSkeleton): Promise<AgentSkeleton>
     * createIdentityGatewayAgent(gatewayId: string, gatewayData: AgentSkeleton): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    putIdentityGatewayAgent(gatewayId: string, gatewayData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Get java agents
     * @returns {romise<AgentSkeleton[]>} a promise that resolves to an array of J2EEAgent objects
     * @deprecated since v2.0.0 use {@link Agent.readJavaAgents | readJavaAgents} instead
     * ```javascript
     * readJavaAgents(): Promise<AgentSkeleton[]>
     * ```
     * @group Deprecated
     */
    getJavaAgents(): Promise<AgentSkeleton[]>;
    /**
     * Get java agent
     * @param {string} agentId java agent id
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an J2EEAgent object
     * @deprecated since v2.0.0 use {@link Agent.readJavaAgent | readJavaAgent} instead
     * ```javascript
     * readJavaAgent(agentId: string): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    getJavaAgent(agentId: string): Promise<AgentSkeleton>;
    /**
     * Update or create java agent
     * @param {string} agentId java agent id
     * @param {AgentSkeleton} agentData java agent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an java agent object
     * @deprecated since v2.0.0 use {@link Agent.updateJavaAgent | updateJavaAgent} or {@link Agent.createJavaAgent | createJavaAgent} instead
     * ```javascript
     * updateJavaAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>
     * createJavaAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    putJavaAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>;
    /**
     * Get web agents
     * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of WebAgent objects
     * @deprecated since v2.0.0 use {@link Agent.readWebAgents | readWebAgents} instead
     * ```javascript
     * readWebAgents(): Promise<AgentSkeleton[]>
     * ```
     * @group Deprecated
     */
    getWebAgents(): Promise<AgentSkeleton[]>;
    /**
     * Get web agent
     * @param {string} agentId web agent id
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an WebAgent object
     * @deprecated since v2.0.0 use {@link Agent.readWebAgent | readWebAgent} instead
     * ```javascript
     * readWebAgent(agentId: string): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    getWebAgent(agentId: string): Promise<AgentSkeleton>;
    /**
     * Update or create web agent
     * @param {string} agentId web agent id
     * @param {AgentSkeleton} agentData WebAgent object
     * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an WebAgent object
     * @deprecated since v2.0.0 use {@link Agent.updateWebAgent | updateWebAgent} or {@link Agent.createWebAgent | createWebAgent} instead
     * ```javascript
     * updateWebAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>
     * createWebAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>
     * ```
     * @group Deprecated
     */
    putWebAgent(agentId: string, agentData: AgentSkeleton): Promise<AgentSkeleton>;
};
declare const _default: (state: State) => Agent;
export default _default;
export interface AgentExportInterface {
    meta?: ExportMetaData;
    agent: Record<string, AgentSkeleton>;
}
export interface AgentGroupExportInterface {
    meta?: ExportMetaData;
    agentGroup: Record<string, AgentGroupSkeleton>;
}
/**
 * Create an empty agent export template
 * @returns {AgentExportInterface} an empty agent export template
 */
export declare function createAgentExportTemplate({ state, }: {
    state: State;
}): AgentExportInterface;
/**
 * Create an empty agent export template
 * @returns {AgentGroupExportInterface} an empty agent export template
 */
export declare function createAgentGroupExportTemplate({ state, }: {
    state: State;
}): AgentGroupExportInterface;
/**
 * Get all agents. Results are sorted alphabetically.
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of agent objects
 */
export declare function readAgents({ state, globalConfig, }: {
    state: State;
    globalConfig: boolean;
}): Promise<AgentSkeleton[]>;
/**
 * Get agent
 * @param {string} agentId agent id/name
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AgentSkeleton>} a promise that resolves to an agent object
 */
export declare function readAgent({ agentId, globalConfig, state, }: {
    agentId: string;
    globalConfig: boolean;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Read agent group by id
 * @param {string} groupId Agent group id
 * @returns {Promise<AgentGroupSkeleton>} a promise that resolves to a agent group object
 */
export declare function readAgentGroup({ groupId, state, }: {
    groupId: string;
    state: State;
}): Promise<AgentGroupSkeleton>;
/**
 * Read all agent groups.
 * @returns {Promise<AgentGroupSkeleton[]>} a promise that resolves to an array of agent group objects
 */
export declare function readAgentGroups({ state, }: {
    state: State;
}): Promise<AgentGroupSkeleton[]>;
/**
 * Export a single agent group by id. The response can be saved to file as is.
 * @param {string} groupId Agent group id
 * @returns {Promise<AgentGroupExportInterface>} Promise resolving to a AgentGroupExportInterface object.
 */
export declare function exportAgentGroup({ groupId, state, }: {
    groupId: string;
    state: State;
}): Promise<AgentGroupExportInterface>;
/**
 * Export all agent groups. The response can be saved to file as is.
 * @returns {Promise<AgentGroupExportInterface>} Promise resolving to a AgentGroupExportInterface object.
 */
export declare function exportAgentGroups({ state, }: {
    state: State;
}): Promise<AgentGroupExportInterface>;
/**
 * Get agent by type and id
 * @param {AgentType} agentType agent type
 * @param {string} agentId agent id/name
 * @returns {Promise<AgentSkeleton>} a promise that resolves to an agent object
 */
export declare function readAgentByTypeAndId({ agentType, agentId, state, }: {
    agentType: AgentType;
    agentId: string;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Get identity gateway agents
 * @returns {: Promise<AgentSkeleton[]>} a promise that resolves to an array of IdentityGatewayAgent objects
 */
export declare function readIdentityGatewayAgents({ state, }: {
    state: State;
}): Promise<AgentSkeleton[]>;
/**
 * Get identity gateway agent
 * @param {string} gatewayId gateway id
 * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
 */
export declare function readIdentityGatewayAgent({ gatewayId, state, }: {
    gatewayId: string;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Create identity gateway agent
 * @param {string} gatewayId gateway id
 * @param {AgentSkeleton} gatewayData IdentityGatewayAgent object
 * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
 */
export declare function createIdentityGatewayAgent({ gatewayId, gatewayData, state, }: {
    gatewayId: string;
    gatewayData: AgentSkeleton;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Update or create identity gateway agent
 * @param {string} gatewayId gateway id
 * @param {AgentSkeleton} gatewayData IdentityGatewayAgent object
 * @returns {Promise<AgentSkeleton>} a promise that resolves to an object containing an IdentityGatewayAgent object
 */
export declare function updateIdentityGatewayAgent({ gatewayId, gatewayData, state, }: {
    gatewayId: string;
    gatewayData: AgentSkeleton;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Get java agents
 * @returns {Promise<AgentSkeleton[]>} a promise that resolves to an array of J2EEAgent objects
 */
export declare function readJavaAgents({ state, }: {
    state: State;
}): Promise<AgentSkeleton[]>;
/**
 * Get java agent
 * @param {string} agentId java agent id
 * @returns {Promise} a promise that resolves to an object containing an J2EEAgent object
 */
export declare function readJavaAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Create java agent
 * @param {string} agentId java agent id
 * @param {Object} agentData java agent object
 * @returns {Promise} a promise that resolves to an object containing an java agent object
 */
export declare function createJavaAgent({ agentId, agentData, state, }: {
    agentId: string;
    agentData: AgentSkeleton;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Update or create java agent
 * @param {string} agentId java agent id
 * @param {Object} agentData java agent object
 * @returns {Promise} a promise that resolves to an object containing an java agent object
 */
export declare function updateJavaAgent({ agentId, agentData, state, }: {
    agentId: string;
    agentData: AgentSkeleton;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Get web agents
 * @returns {Promise} a promise that resolves to an array of WebAgent objects
 */
export declare function readWebAgents({ state }: {
    state: State;
}): Promise<import("../api/ApiTypes").AmConfigEntityInterface[]>;
/**
 * Get web agent
 * @param {string} agentId web agent id
 * @returns {Promise} a promise that resolves to an object containing an WebAgent object
 */
export declare function readWebAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<import("../api/ApiTypes").AmConfigEntityInterface>;
/**
 * Create web agent
 * @param {string} agentId java agent id
 * @param {Object} agentData java agent object
 * @returns {Promise} a promise that resolves to an object containing an java agent object
 */
export declare function createWebAgent({ agentId, agentData, state, }: {
    agentId: string;
    agentData: AgentSkeleton;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Update or create web agent
 * @param {string} agentId web agent id
 * @param {Object} agentData WebAgent object
 * @returns {Promise} a promise that resolves to an object containing an WebAgent object
 */
export declare function updateWebAgent({ agentId, agentData, state, }: {
    agentId: string;
    agentData: AgentSkeleton;
    state: State;
}): Promise<import("../api/ApiTypes").AmConfigEntityInterface>;
/**
 * Export all agents. The response can be saved to file as is.
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportAgents({ state, globalConfig, }: {
    state: State;
    globalConfig: boolean;
}): Promise<AgentExportInterface>;
/**
 * Export all identity gateway agents. The response can be saved to file as is.
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportIdentityGatewayAgents({ state, }: {
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Export all java agents. The response can be saved to file as is.
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportJavaAgents({ state, }: {
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Export all web agents. The response can be saved to file as is.
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportWebAgents({ state, }: {
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Export agent. The response can be saved to file as is.
 * @param agentId agent id/name
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportAgent({ agentId, globalConfig, state, }: {
    agentId: string;
    globalConfig: boolean;
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Export identity gateway agent. The response can be saved to file as is.
 * @param agentId agent id/name
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportIdentityGatewayAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Export java agent. The response can be saved to file as is.
 * @param agentId agent id/name
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportJavaAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Export web agent. The response can be saved to file as is.
 * @param agentId agent id/name
 * @returns {Promise<AgentExportInterface>} Promise resolving to an AgentExportInterface object.
 */
export declare function exportWebAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<AgentExportInterface>;
/**
 * Import agents. The import data is usually read from an agent export file.
 * @param {AgentExportInterface} importData agent import data.
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AgentSkeleton[]>} The agents that were imported.
 */
export declare function importAgents({ importData, globalConfig, state, }: {
    importData: AgentExportInterface;
    globalConfig: boolean;
    state: State;
}): Promise<AgentSkeleton[]>;
/**
 * Import agent groups. The import data is usually read from an agent group export file.
 * @param {AgentGroupExportInterface} importData agent group import data.
 * @returns {Promise<AgentGroupSkeleton[]>} The agent groups that were imported.
 */
export declare function importAgentGroups({ importData, state, }: {
    importData: AgentGroupExportInterface;
    state: State;
}): Promise<AgentGroupSkeleton[]>;
/**
 * Import identity gateway agents. The import data is usually read from an agent export file.
 * @param {AgentExportInterface} importData agent import data.
 */
export declare function importIdentityGatewayAgents({ importData, state, }: {
    importData: AgentExportInterface;
    state: State;
}): Promise<void>;
/**
 * Import java agents. The import data is usually read from an agent export file.
 * @param {AgentExportInterface} importData agent import data.
 */
export declare function importJavaAgents({ importData, state, }: {
    importData: AgentExportInterface;
    state: State;
}): Promise<void>;
/**
 * Import web agents. The import data is usually read from an agent export file.
 * @param {AgentExportInterface} importData agent import data.
 */
export declare function importWebAgents({ importData, state, }: {
    importData: AgentExportInterface;
    state: State;
}): Promise<void>;
/**
 * Import agent. The import data is usually read from an agent export file.
 * @param {string} agentId agent id/name
 * @param {AgentExportInterface} importData agent import data.
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
 */
export declare function importAgent({ agentId, importData, globalConfig, state, }: {
    agentId: string;
    importData: AgentExportInterface;
    globalConfig: boolean;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Import agent group. The import data is usually read from an agent group export file.
 * @param {string} agentGroupId agent group id/name
 * @param {AgentGroupExportInterface} importData agent group import data.
 * @returns {Promise<AgentGroupSkeleton>} Promise resolving to an agent object.
 */
export declare function importAgentGroup({ agentGroupId, importData, state, }: {
    agentGroupId: string;
    importData: AgentGroupExportInterface;
    state: State;
}): Promise<AgentGroupSkeleton>;
/**
 * Import identity gateway agent. The import data is usually read from an agent export file.
 * @param {string} agentId agent id/name
 * @param {AgentExportInterface} importData agent import data.
 * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
 */
export declare function importIdentityGatewayAgent({ agentId, importData, state, }: {
    agentId: string;
    importData: AgentExportInterface;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Import java agent. The import data is usually read from an agent export file.
 * @param {string} agentId agent id/name
 * @param {AgentExportInterface} importData agent import data.
 * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
 */
export declare function importJavaAgent({ agentId, importData, state, }: {
    agentId: string;
    importData: AgentExportInterface;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Import java agent. The import data is usually read from an agent export file.
 * @param {string} agentId agent id/name
 * @param {AgentExportInterface} importData agent import data.
 * @returns {Promise<AgentSkeleton>} Promise resolving to an agent object.
 */
export declare function importWebAgent({ agentId, importData, state, }: {
    agentId: string;
    importData: AgentExportInterface;
    state: State;
}): Promise<AgentSkeleton>;
/**
 * Delete all agents
 */
export declare function deleteAgents({ state }: {
    state: State;
}): Promise<void>;
/**
 * Delete all identity gateway agents
 */
export declare function deleteIdentityGatewayAgents({ state }: {
    state: State;
}): Promise<void>;
/**
 * Delete all java agents
 */
export declare function deleteJavaAgents({ state }: {
    state: State;
}): Promise<void>;
/**
 * Delete all web agents
 */
export declare function deleteWebAgents({ state }: {
    state: State;
}): Promise<void>;
/**
 * Delete agent
 * @param agentId agent id/name
 */
export declare function deleteAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<void>;
/**
 * Delete identity gateway agent
 * @param agentId agent id/name
 */
export declare function deleteIdentityGatewayAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<void>;
/**
 * Delete java agent
 * @param agentId agent id/name
 */
export declare function deleteJavaAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<void>;
/**
 * Delete web agent
 * @param agentId agent id/name
 */
export declare function deleteWebAgent({ agentId, state, }: {
    agentId: string;
    state: State;
}): Promise<void>;
//# sourceMappingURL=AgentOps.d.ts.map