import typing


def query_bt_info(
    start: typing.Dict[str, typing.Any],
    composition_key: str,
    wavelength_key: str,
    default_composition: str = "Ni"
) -> dict:
    """Query the necessary information for the PDFGetter."""
    if composition_key in start:
        composition = start[composition_key]
        if isinstance(composition, dict):
            composition_str = "".join(["{}{}".format(k, v) for k, v in composition.items()])
        elif isinstance(composition, str):
            composition_str = composition
        else:
            raise ValueError("Cannot parse composition: {}".format(type(composition)))
    else:
        composition_str = default_composition
    if wavelength_key in start:
        wavelength = float(start[wavelength_key])
    else:
        wavelength = None
    return {
        "composition": composition_str,
        "wavelength": wavelength
    }