import type { Role } from '@mattermost/types/roles';
import type { GlobalState } from '@mattermost/types/store';
export type PermissionsOptions = {
    channel?: string;
    team?: string;
    permission: string;
};
export declare function getRoles(state: GlobalState): {
    [x: string]: Role;
};
export declare const getMySystemRoles: (state: GlobalState) => Set<string>;
export declare const getMySystemPermissions: (state: GlobalState) => Set<string>;
export declare function haveISystemPermission(state: GlobalState, options: PermissionsOptions): boolean;
export declare function getPermissionsForRoles(allRoles: Record<string, Role>, roleSet: Set<string>): Set<string>;
