THIS must be SIMPLE! How do you return a table of #datatypes for each _value

I have this query that queries all _fields simply to get the #datatpe.

I can list all the _fields with corresponding _value:

from(bucket: “my_bucket”)
|> range(start: -100000d)
|> keep(columns: ["_field","_value"])
|> unique(column: “_field”)

The data I need is there in the headers of the table (i.e. #datatype)
The data is also written as column headings (i.e. “_value (boolean)”, “_value (number)” and “_value (string)”

So alll I need is a final command that maps each _value into its type (i.e. bool, long, double, string)
I’m needing something like

|> map(fn: ( r ) => ({ r with _type: type(v: r._value) }))
or
|> map(fn: ( r ) => ({ r with _type: r["#datatype]) }))