/**
 * Copyright (c) OpenLens Maintainers. All rights reserved.
 * Licensed under MIT License. See LICENSE in root directory for more information.
 */
import type { AuthorizationV1Api } from "@kubernetes/client-node";
import type { KubeApiResource } from "../rbac";
export type CanListResource = (resource: KubeApiResource) => boolean;
/**
 * Requests the permissions for actions on the kube cluster
 * @param namespace The namespace of the resources
 */
export type RequestNamespaceListPermissions = (namespace: string) => Promise<CanListResource>;
export type CreateRequestNamespaceListPermissions = (api: AuthorizationV1Api) => RequestNamespaceListPermissions;
declare const createRequestNamespaceListPermissionsInjectable: import("@ogre-tools/injectable").Injectable<CreateRequestNamespaceListPermissions, unknown, void>;
export default createRequestNamespaceListPermissionsInjectable;
