import { AdministrativePermissionResponse } from "../../../models/admin/administrative-permission-response";
import { AdministrativePermissionsResponse } from "../../../models/admin/administrative-permissions-response";
import { CreateAdministrativePermission } from "../../../models/admin/create-administrative-permission";
import { CreateDefaultObjectAccessPermission } from "../../../models/admin/create-default-object-access-permission";
import { DefaultObjectAccessPermissionResponse } from "../../../models/admin/default-object-access-permission-response";
import { DefaultObjectAccessPermissionsResponse } from "../../../models/admin/default-object-access-permissions-response";
import { DeletePermissionResponse } from "../../../models/admin/delete-permission-response";
import { ProjectPermissionsResponse } from "../../../models/admin/project-permissions-response";
import { UpdateAdministrativePermission } from "../../../models/admin/update-administrative-permission";
import { UpdateAdministrativePermissionGroup } from "../../../models/admin/update-administrative-permission-group";
import { UpdateDefaultObjectAccessPermission } from "../../../models/admin/update-default-object-access-permission";
import { UpdateDefaultObjectAccessPermissionProperty } from "../../../models/admin/update-default-object-access-permission-property";
import { UpdateDefaultObjectAccessPermissionResourceClass } from "../../../models/admin/update-default-object-access-permission-resource-class";
import { ApiResponseData } from "../../../models/api-response-data";
import { Endpoint } from "../../endpoint";
/**
 * An endpoint for working with Knora permissions.
 * @deprecated Use open API docs instead
 * @category Endpoint Admin
 */
export declare class PermissionsEndpointAdmin extends Endpoint {
    /**
     * Gets the permissions for a project.
     *
     * @param projectIri The project IRI.
     */
    getProjectPermissions(projectIri: string): import("rxjs").Observable<ApiResponseData<ProjectPermissionsResponse>>;
    /**
     * Gets the administrative permissions for a project.
     *
     * @param projectIri The project IRI.
     */
    getAdministrativePermissions(projectIri: string): import("rxjs").Observable<ApiResponseData<AdministrativePermissionsResponse>>;
    /**
     * Gets the administrative permission for a project and group.
     *
     * @param projectIri The project IRI.
     * @param groupIri The group IRI.
     */
    getAdministrativePermission(projectIri: string, groupIri: string): import("rxjs").Observable<ApiResponseData<AdministrativePermissionResponse>>;
    /**
     * Creates an administrative permission.
     *
     * @param administrativePermission the administrative permission to be created.
     */
    createAdministrativePermission(administrativePermission: CreateAdministrativePermission): import("rxjs").Observable<ApiResponseData<AdministrativePermissionResponse>>;
    /**
     * Updates an existing administrative permission.
     *
     * @param permissionIri the Iri of the permission to be updated.
     * @param administrativePermission the new permission settings.
     */
    updateAdministrativePermission(permissionIri: string, administrativePermission: UpdateAdministrativePermission): import("rxjs").Observable<ApiResponseData<AdministrativePermissionResponse>>;
    /**
     * Updates an existing administrative permission's group.
     *
     * @param permissionIri the Iri of the permission to be updated.
     * @param updateAdministrativePermissionGroup the new group setting.
     */
    updateAdministrativePermissionGroup(permissionIri: string, updateAdministrativePermissionGroup: UpdateAdministrativePermissionGroup): import("rxjs").Observable<ApiResponseData<AdministrativePermissionResponse>>;
    /**
     * Gets all default object access permissions for a project.
     *
     * @param projectIri The project IRI.
     */
    getDefaultObjectAccessPermissions(projectIri: string): import("rxjs").Observable<ApiResponseData<DefaultObjectAccessPermissionsResponse>>;
    /**
     * Creates a default object access permission.
     *
     * @param defaultObjectAccessPermission the permission to be created.
     */
    createDefaultObjectAccessPermission(defaultObjectAccessPermission: CreateDefaultObjectAccessPermission): import("rxjs").Observable<ApiResponseData<DefaultObjectAccessPermissionResponse>>;
    /**
     * Updates an existing default object access permission.
     *
     * @param permissionIri the Iri of the permission to be updated.
     * @param defaultObjectAccessPermission the new permission settings.
     */
    updateDefaultObjectAccessPermission(permissionIri: string, defaultObjectAccessPermission: UpdateDefaultObjectAccessPermission): import("rxjs").Observable<ApiResponseData<DefaultObjectAccessPermissionResponse>>;
    /**
     * Updates an existing default object access permission's group.
     *
     * @param permissionIri the Iri of the permission to be updated.
     * @param administrativePermission the new permission settings.
     */
    updateDefaultObjectAccessPermissionGroup(permissionIri: string, administrativePermission: UpdateAdministrativePermissionGroup): import("rxjs").Observable<ApiResponseData<DefaultObjectAccessPermissionResponse>>;
    /**
     * Updates an existing default object access permission's resource class.
     *
     * @param permissionIri the Iri of the permission to be updated.
     * @param administrativePermission the new permission settings.
     */
    updateDefaultObjectAccessPermissionResourceClass(permissionIri: string, administrativePermission: UpdateDefaultObjectAccessPermissionResourceClass): import("rxjs").Observable<ApiResponseData<DefaultObjectAccessPermissionResponse>>;
    /**
     * Updates an existing default object access permission's property.
     *
     * @param permissionIri the Iri of the permission to be updated.
     * @param administrativePermission the new permission settings.
     */
    updateDefaultObjectAccessPermissionProperty(permissionIri: string, administrativePermission: UpdateDefaultObjectAccessPermissionProperty): import("rxjs").Observable<ApiResponseData<DefaultObjectAccessPermissionResponse>>;
    /**
     * Deletes a permission.
     *
     * @param permissionIri the IRI of the permission to be deleted.
     */
    deletePermission(permissionIri: string): import("rxjs").Observable<ApiResponseData<DeletePermissionResponse>>;
}
