import type Database from "../../../../metabase-lib/v1/metadata/Database";
import type { Group, GroupsPermissions } from "../../../../metabase-types/api";
import type { DatabaseEntityId, EntityId, SchemaEntityId } from "../types";
import { DataPermissionValue } from "../types";
export declare const getDefaultGroupHasHigherAccessText: (defaultGroup: Group) => string;
export declare function getPermissionWarning(value: DataPermissionValue, defaultGroupValue: DataPermissionValue, entityType: string | null, defaultGroup: Group, groupId: Group["id"], descendingPermissions?: DataPermissionValue[]): string | null;
export declare function getBlockWarning(dbValue: DataPermissionValue, schemaValue: DataPermissionValue, tableValue?: DataPermissionValue): string | undefined;
export declare function getPermissionWarningModal(value: DataPermissionValue, defaultGroupValue: DataPermissionValue, entityType: string | null, defaultGroup: Group, groupId: Group["id"], descendingPermissions?: DataPermissionValue[]): {
    title: string;
    message: string;
    confirmButtonText: string;
    cancelButtonText: string;
} | undefined;
export declare function getWillRevokeNativeAccessWarningModal(permissions: GroupsPermissions, groupId: number, entityId: EntityId): {
    title: string;
    message: string;
    confirmButtonText: string;
    cancelButtonText: string;
} | undefined;
export declare function getViewDataPermissionsTooRestrictiveWarningModal(permissions: GroupsPermissions, groupId: Group["id"], entityId: DatabaseEntityId | SchemaEntityId, database: Database, value: DataPermissionValue): {
    title: string;
    message: string;
    confirmButtonText: string;
    cancelButtonText: string;
} | {
    title: string;
    message: import("react/jsx-runtime").JSX.Element;
    confirmButtonText: string;
    cancelButtonText: string;
} | undefined;
export declare function getRevokingAccessToAllTablesWarningModal(database: Database, permissions: GroupsPermissions, groupId: Group["id"], entityId: EntityId, value: DataPermissionValue): {
    title: string;
    message: string;
    confirmButtonText: string;
    cancelButtonText: string;
} | undefined;
