import type { TagVariant } from '../components/ui/atoms/Tag/Tag';
import type { LegalEntityAssociationType } from '../core/models/api/legal-entity-association';
import { type UnincorporatedPartnershipMemberType } from '../core/models/api/unincorporated-partnership';
import type { NsTranslationKey } from '../../types';
import { type TrustMemberGuidanceLabel } from '../components/Trust/utils/trustMemberGuidance';
export type Role = `${LegalEntityAssociationType | TrustMemberGuidanceLabel | UnincorporatedPartnershipMemberType}`;
type RoleMetadata<R extends Role> = Record<R, {
    name: NsTranslationKey<'common'>;
    variant?: TagVariant;
    description?: NsTranslationKey<'common'>;
}>;
export declare const roleMetadata: Partial<RoleMetadata<Role>>;
export declare const getRoleTagVariant: (role: Role) => TagVariant;
export declare const getRoleName: (role: Role) => NsTranslationKey<"common">;
export {};
