import Resource from "./resource.js";
import type AdminEventRepresentation from "../defs/adminEventRepresentation.js";
import type RealmRepresentation from "../defs/realmRepresentation.js";
import type { PartialImportRealmRepresentation, PartialImportResponse } from "../defs/realmRepresentation.js";
import type EventRepresentation from "../defs/eventRepresentation.js";
import type EventType from "../defs/eventTypes.js";
import type KeysMetadataRepresentation from "../defs/keyMetadataRepresentation.js";
import type ClientInitialAccessPresentation from "../defs/clientInitialAccessPresentation.js";
import type TestLdapConnectionRepresentation from "../defs/testLdapConnection.js";
import type { KeycloakAdminClient } from "../client.js";
import type { RealmEventsConfigRepresentation } from "../defs/realmEventsConfigRepresentation.js";
import type GlobalRequestResult from "../defs/globalRequestResult.js";
import type GroupRepresentation from "../defs/groupRepresentation.js";
import type { ManagementPermissionReference } from "../defs/managementPermissionReference.js";
import type ComponentTypeRepresentation from "../defs/componentTypeRepresentation.js";
import type { ClientSessionStat } from "../defs/clientSessionStat.js";
export declare class Realms extends Resource {
    /**
     * Realm
     * https://www.keycloak.org/docs-api/11.0/rest-api/#_realms_admin_resource
     */
    find: (payload?: {
        briefRepresentation?: boolean | undefined;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<RealmRepresentation[]>;
    create: (payload?: RealmRepresentation | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<{
        realmName: string;
    }>;
    findOne: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<RealmRepresentation | undefined>;
    update: (query: {
        realm: string;
    }, payload: RealmRepresentation) => Promise<void>;
    del: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    partialImport: (payload?: {
        realm: string;
        rep: PartialImportRealmRepresentation;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<PartialImportResponse>;
    export: (payload?: {
        realm: string;
        exportClients?: boolean | undefined;
        exportGroupsAndRoles?: boolean | undefined;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<RealmRepresentation>;
    getDefaultGroups: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<GroupRepresentation[]>;
    addDefaultGroup: (payload?: {
        realm: string;
        id: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<any>;
    removeDefaultGroup: (payload?: {
        realm: string;
        id: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<any>;
    getGroupByPath: (payload?: {
        path: string;
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<GroupRepresentation>;
    /**
     * Get events Returns all events, or filters them based on URL query parameters listed here
     */
    findEvents: (payload?: {
        realm: string;
        client?: string | undefined;
        dateFrom?: string | undefined;
        dateTo?: string | undefined;
        first?: number | undefined;
        ipAddress?: string | undefined;
        max?: number | undefined;
        type?: EventType | EventType[] | undefined;
        user?: string | undefined;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<EventRepresentation[]>;
    getConfigEvents: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<RealmEventsConfigRepresentation>;
    updateConfigEvents: (query: {
        realm: string;
    }, payload: RealmEventsConfigRepresentation) => Promise<void>;
    clearEvents: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    clearAdminEvents: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    getClientRegistrationPolicyProviders: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<ComponentTypeRepresentation[]>;
    getClientsInitialAccess: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<ClientInitialAccessPresentation[]>;
    createClientsInitialAccess: (query: {
        realm: string;
    }, payload: {
        count?: number | undefined;
        expiration?: number | undefined;
    }) => Promise<ClientInitialAccessPresentation>;
    delClientsInitialAccess: (payload?: {
        realm: string;
        id: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    /**
     * Remove a specific user session.
     */
    removeSession: (payload?: {
        realm: string;
        sessionId: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    /**
     * Get admin events Returns all admin events, or filters events based on URL query parameters listed here
     */
    findAdminEvents: (payload?: {
        realm: string;
        authClient?: string | undefined;
        authIpAddress?: string | undefined;
        authRealm?: string | undefined;
        authUser?: string | undefined;
        dateFrom?: Date | undefined;
        dateTo?: Date | undefined;
        first?: number | undefined;
        max?: number | undefined;
        operationTypes?: string | undefined;
        resourcePath?: string | undefined;
        resourceTypes?: string | undefined;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<AdminEventRepresentation[]>;
    /**
     * Users management permissions
     */
    getUsersManagementPermissions: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<ManagementPermissionReference>;
    updateUsersManagementPermissions: (payload?: {
        realm: string;
        enabled: boolean;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<ManagementPermissionReference>;
    /**
     * Sessions
     */
    getClientSessionStats: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<ClientSessionStat[]>;
    logoutAll: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    deleteSession: (payload?: {
        realm: string;
        session: string;
        isOffline: boolean;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    pushRevocation: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<GlobalRequestResult>;
    getKeys: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<KeysMetadataRepresentation>;
    testLDAPConnection: (query: {
        realm: string;
    }, payload: TestLdapConnectionRepresentation) => Promise<any>;
    testSMTPConnection: (query: {
        realm: string;
    }, payload: Record<string, string | number>) => Promise<any>;
    ldapServerCapabilities: (query: {
        realm: string;
    }, payload: TestLdapConnectionRepresentation) => Promise<any>;
    getRealmSpecificLocales: (payload?: {
        realm: string;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<string[]>;
    getRealmLocalizationTexts: (payload?: {
        realm: string;
        selectedLocale: string;
        first?: number | undefined;
        max?: number | undefined;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<Record<string, string>>;
    addLocalization: (query: {
        realm: string;
        selectedLocale: string;
        key: string;
    }, payload: string) => Promise<void>;
    deleteRealmLocalizationTexts: (payload?: {
        realm: string;
        selectedLocale: string;
        key?: string | undefined;
    } | undefined, options?: Pick<import("./agent.js").RequestArgs, "catchNotFound"> | undefined) => Promise<void>;
    constructor(client: KeycloakAdminClient);
}
