import type { Role } from '@mattermost/types/roles';
import type { ActionFuncAsync } from 'mattermost-redux/types/actions';
export declare function getRolesByNames(rolesNames: string[]): ActionFuncAsync<Role[], import("@mattermost/types/store").GlobalState, import("redux").AnyAction>;
export declare function getRoleByName(roleName: string): ActionFuncAsync<Role, import("@mattermost/types/store").GlobalState, import("redux").AnyAction>;
export declare function getRole(roleId: string): ActionFuncAsync<Role, import("@mattermost/types/store").GlobalState, import("redux").AnyAction>;
export declare function editRole(role: Partial<Role> & {
    id: string;
}): ActionFuncAsync<Role, import("@mattermost/types/store").GlobalState, import("redux").AnyAction>;
export declare function setPendingRoles(roles: string[]): {
    type: "SET_PENDING_ROLES";
    data: string[];
};
export declare function loadRolesIfNeeded(roles: Iterable<string>): ActionFuncAsync<Record<string, Role>>;
