def METHOD_NAME(fmt_string: str) -> dict:
    """Extract formatting information from the provided format string.
    Returns a dict object which contains structured information about the format groups
    """
    groups = string.Formatter().parse(fmt_string)
    info = {}
    seen_groups = set()
    for group in groups:
        # Skip any group which does not have a named value
        if not group[1]:
            continue
        name = group[1]
        # Check for duplicate named groups
        if name in seen_groups:
            raise ValueError(f"Duplicate group '{name}'")
        else:
            seen_groups.add(name)
        info[group[1]] = {
            'format': group[1],
            'prefix': group[0],
        }
    return info