import { ProductType, UserRoleType } from '@zeniai/client-epic-state';
export interface RoleOption {
    enabled: boolean;
    label: string;
    newRole: boolean;
    value: UserRoleType;
}
export declare const financeRoles: RoleOption[];
declare const toRootRoleType: (v: string) => "admin" | "investor_or_banker" | "employee";
export type RootRoleType = ReturnType<typeof toRootRoleType>;
interface RootRoleOption {
    label: string;
    roleSuitableFor: string;
    subTitle: string;
    value: RootRoleType | UserRoleType;
}
export interface ProductWiseRoleOption {
    label: string;
    options: RoleOption[];
    subTitleAdmin: string;
    subTitleUser: string;
    productType?: ProductType;
    selectedOption?: RoleOption;
}
export declare const employeeRoleOptions: ProductWiseRoleOption[];
export declare const rootRoleOptions: Record<RootRoleType, RootRoleOption>;
export declare const getProductWiseRoleOptions: (roles: UserRoleType[], customerRoleOptions: ProductWiseRoleOption[]) => Record<RootRoleType, ProductWiseRoleOption[]>;
export declare const getSelectedRootRole: (roles: UserRoleType[]) => RootRoleType;
export declare const getProductTypeFromRole: (role: UserRoleType) => ProductType | undefined;
export declare const getAllRootRoles: (isBankingOnlyTenant: boolean, isCardOnlyTenant: boolean) => RootRoleType[];
export declare const allRoles: RoleOption[];
export {};
