Type alias ExtractVariablesDeep<Query>

ExtractVariablesDeep<Query>: Query extends Variable<infer VType, infer VName>
    ? {
        [key in VName]: GetVariableType<VType>
    }
    : Query extends string | number | boolean | (string | number | boolean)[]
        ? {}
        : UnionToIntersection<{
            [K in keyof Query]: WithOptionalNullables<ExtractVariablesDeep<Query[K]>>
        }[keyof Query]>

Type Parameters

  • Query