import { type AuthenticationSettingsSkeleton } from '../api/AuthenticationSettingsApi';
import { State } from '../shared/State';
import { type ExportMetaData } from './OpsTypes';
export type AuthenticationSettings = {
    /**
     * Read authentication settings
     * @returns {Promise<AuthenticationSettingsSkeleton>} a promise that resolves an authentication settings object
     */
    readAuthenticationSettings(): Promise<AuthenticationSettingsSkeleton>;
    /**
     * Update authentication settings
     * @param {AuthenticationSettingsSkeleton} settings authentication settings data
     * @returns {Promise<AuthenticationSettingsSkeleton>} a promise that resolves an authentication settings object
     */
    updateAuthenticationSettings(settings: AuthenticationSettingsSkeleton): Promise<AuthenticationSettingsSkeleton>;
    /**
     * Export authentication settings
     * @returns {Promise<AuthenticationSettingsExportInterface>} a promise that resolves to an AuthenticationSettingsExportInterface object
     */
    exportAuthenticationSettings(): Promise<AuthenticationSettingsExportInterface>;
    /**
     * Import authentication settings
     * @param {AuthenticationSettingsExportInterface} importData import data
     */
    importAuthenticationSettings(importData: AuthenticationSettingsExportInterface): 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
 * @returns {Promise} a promise that resolves to an object containing an array of authentication settingss
 */
export declare function readAuthenticationSettings({ state, }: {
    state: State;
}): Promise<AuthenticationSettingsSkeleton>;
export declare function updateAuthenticationSettings({ settings, state, }: {
    settings: AuthenticationSettingsSkeleton;
    state: State;
}): Promise<AuthenticationSettingsSkeleton>;
/**
 * Export authentication settings
 * @returns {Promise<AuthenticationSettingsExportInterface>} a promise that resolves to a AuthenticationSettingsExportInterface object
 */
export declare function exportAuthenticationSettings({ state, }: {
    state: State;
}): Promise<AuthenticationSettingsExportInterface>;
/**
 * Import authentication settings
 * @param {AuthenticationSettingsExportInterface} importData import data
 * @returns {Promise<AuthenticationSettingsSkeleton>} a promise resolving to a authentication settings object
 */
export declare function importAuthenticationSettings({ importData, state, }: {
    importData: AuthenticationSettingsExportInterface;
    state: State;
}): Promise<AuthenticationSettingsSkeleton>;
//# sourceMappingURL=AuthenticationSettingsOps.d.ts.map