async def METHOD_NAME(model, target=None, raw=False, filters=None):
    """Returns a string that mimics the content of the information
    returned in the juju status command. If the raw parameter is
    enabled, the function retursn a FullStatus object.
    :param Model model: model object to be used
    :param Fileobject target: if set expects a file object such as
        sys.stdout or a file descriptor. The obtained status will
        be sent to the file using the write function. If set to
        `None`, this function returns a string with the formatted
        status.
    :param bool raw: if `true` this functions returns the raw
        `FullStatus` object returned by Juju. This is similar to
        invoking `get_status`.
    :param str fileters: Optional list of applications, units, or machines
        to include, which can use wildcards ('*').
    """
    client_facade = client.ClientFacade.from_connection(model.connection())
    result_status = await client_facade.FullStatus(patterns=filters)
    if raw:
        result_str = str(result_status)
    else:
        result_str = _print_status_model(result_status)
        result_str += '\n'
        result_str += _print_status_apps(result_status)
        result_str += '\n'
        result_str += _print_status_units(result_status)
        result_str += '\n'
        result_str += _print_status_machines(result_status)
        result_str += '\n'
    if target is None:
        return result_str
    try:
        target.write(result_str)
    except Exception as e:
        logging.error(e)
    return None