def METHOD_NAME(add_remove: Optional[Union[str, 'AddRemove']] = None,
                                         lab_account_resource_id: Optional[str] = None,
                                         lab_resource_id: Optional[str] = None,
                                         user_name: Optional[str] = None,
                                         opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetGlobalUserPersonalPreferencesResult:
    """
    Get personal preferences for a user
    :param Union[str, 'AddRemove'] add_remove: Enum indicating if user is adding or removing a favorite lab
    :param str lab_account_resource_id: Resource Id of the lab account
    :param str lab_resource_id: Resource Id of the lab to add/remove from the favorites list
    :param str user_name: The name of the user.
    """
    __args__ = dict()
    __args__['addRemove'] = add_remove
    __args__['labAccountResourceId'] = lab_account_resource_id
    __args__['labResourceId'] = lab_resource_id
    __args__['userName'] = user_name
    opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke('azure-native:labservices/v20181015:getGlobalUserPersonalPreferences', __args__, opts=opts, typ=GetGlobalUserPersonalPreferencesResult).value
    return AwaitableGetGlobalUserPersonalPreferencesResult(
        favorite_lab_resource_ids=pulumi.get(__ret__, 'favorite_lab_resource_ids'),
        id=pulumi.get(__ret__, 'id'))