typed.go
func (t Typed) ObjectIf(key string) (Typed, bool) {
	value, exists := t[key]
	if exists == false {
		return nil, false
	}
	switch t := value.(type) {
	case map[string]interface{}:
		return Typed(t), true
	case Typed:
		return t, true
	}
	return nil, false
}
func (t Typed) ObjectIf(key string) (Typed, bool) {
	value, exists := t[key]
	if exists == false {
		return nil, false
	}
	switch t := value.(type) {
	case map[string]interface{}:
		return Typed(t), true
	case Typed:
		return t, true
	}
	return nil, false
}
func ( t Typed ) ObjectIf ( key string ) ( Typed , bool ) { value , exists := t [ key ] if exists == false { return nil , false } switch t := value . ( type ) { case map [ string ] interface { } : return Typed ( t ) , true case Typed : return t , true } return nil , false }
// Returns a Typed helper at the key and whether
// or not the key existed and the value was an map[string]interface{}
Returns a Typed helper at the key and whether or not the key existed and the value was an map [ string ] interface {}