Is there known ways of getting around this without using
as
as
? It feels so wrong. E.g. here's what i have to do to fix it in my real code:
z.object({ functionName: z.literal(args.name as ToolArgs["name"]), args: args.data.args as ToolArgs["data"]["args"], responseData: makeToolResponseDataSchema( args.data.internalResponseData as ToolArgs["data"]["internalResponseData"], args.data.externalResponseData as ToolArgs["data"]["externalResponseData"] ),})
z.object({ functionName: z.literal(args.name as ToolArgs["name"]), args: args.data.args as ToolArgs["data"]["args"], responseData: makeToolResponseDataSchema( args.data.internalResponseData as ToolArgs["data"]["internalResponseData"], args.data.externalResponseData as ToolArgs["data"]["externalResponseData"] ),})