import { type AuthenticationSettingsSkeleton } from '../api/AuthenticationSettingsApi';
import { State } from '../shared/State';
import { type ExportMetaData } from './OpsTypes';
export type AuthenticationSettings = {
    /**
     * Read authentication settings
     * @param {boolean} globalConfig true if global authentication settings is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AuthenticationSettingsSkeleton>} a promise that resolves an authentication settings object
     */
    readAuthenticationSettings(globalConfig: boolean): Promise<AuthenticationSettingsSkeleton>;
    /**
     * Update authentication settings
     * @param {AuthenticationSettingsSkeleton} settings authentication settings data
     * @param {boolean} globalConfig true if global authentication settings are the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AuthenticationSettingsSkeleton>} a promise that resolves an authentication settings object
     */
    updateAuthenticationSettings(settings: AuthenticationSettingsSkeleton, globalConfig: boolean): Promise<AuthenticationSettingsSkeleton>;
    /**
     * Export authentication settings
     * @param {boolean} globalConfig true if global authentication settings is the target of the operation, false otherwise. Default: false.
     * @returns {Promise<AuthenticationSettingsExportInterface>} a promise that resolves to an AuthenticationSettingsExportInterface object
     */
    exportAuthenticationSettings(globalConfig: boolean): Promise<AuthenticationSettingsExportInterface>;
    /**
     * Import authentication settings
     * @param {AuthenticationSettingsExportInterface} importData import data
     * @param {boolean} globalConfig true if global authentication settings are the target of the operation, false otherwise. Default: false.
     */
    importAuthenticationSettings(importData: AuthenticationSettingsExportInterface, globalConfig: boolean): Promise<AuthenticationSettingsSkeleton>;
};
declare const _default: (state: State) => AuthenticationSettings;
export default _default;
export interface AuthenticationSettingsExportInterface {
    meta?: ExportMetaData;
    authentication: AuthenticationSettingsSkeleton;
}
/**
 * Create an empty authentication settings export template
 * @returns {AuthenticationSettingsExportInterface} an empty authentication settings export template
 */
export declare function createAuthenticationSettingsExportTemplate({ state, }: {
    state: State;
}): AuthenticationSettingsExportInterface;
/**
 * Read authentication settings
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise} a promise that resolves to an object containing an array of authentication settingss
 */
export declare function readAuthenticationSettings({ state, globalConfig, }: {
    state: State;
    globalConfig: boolean;
}): Promise<AuthenticationSettingsSkeleton>;
export declare function updateAuthenticationSettings({ settings, globalConfig, state, }: {
    settings: AuthenticationSettingsSkeleton;
    globalConfig: boolean;
    state: State;
}): Promise<AuthenticationSettingsSkeleton>;
/**
 * Export authentication settings
 * @param {boolean} globalConfig true if global agent is the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AuthenticationSettingsExportInterface>} a promise that resolves to a AuthenticationSettingsExportInterface object
 */
export declare function exportAuthenticationSettings({ state, globalConfig, }: {
    state: State;
    globalConfig: boolean;
}): Promise<AuthenticationSettingsExportInterface>;
/**
 * Import authentication settings
 * @param {AuthenticationSettingsExportInterface} importData import data
 * @param {boolean} globalConfig true if global authentication settings are the target of the operation, false otherwise. Default: false.
 * @returns {Promise<AuthenticationSettingsSkeleton>} a promise resolving to a authentication settings object
 */
export declare function importAuthenticationSettings({ importData, globalConfig, state, }: {
    importData: AuthenticationSettingsExportInterface;
    globalConfig: boolean;
    state: State;
}): Promise<AuthenticationSettingsSkeleton>;
//# sourceMappingURL=AuthenticationSettingsOps.d.ts.map