groqd
groqd copied to clipboard
Export types
Is there an existing issue for this?
- [X] I have searched the existing issues
Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Feature Request
Whenever I need a type from groqd, I often need to either copy it from the declarations file myself or make an arbitrary query to extract it's type:
// src/utils/groqd.types.ts
// copied from index.d.ts
export type WithAssetOption =
| "base"
| "dimensions"
| "location"
| "lqip"
| "palette"
| "isOpaque"
| "hasAlpha"
| "blurHash";
const unknownArrayQuery = q("").filter();
export type UnknownArrayQuery = typeof unknownArrayQuery;
const entityQuery = q("").filter().slice(0);
export type EntityQuery = typeof entityQuery;
It would be nice if the library exported its types, not only to make it simpler to build wrappers around it, but also to make sure that we don't end up with outdated types on our end after updating groqd.
Currently, these are the only things that can be imported:
import {
q,
z,
sanityImage,
makeSafeQueryRunner,
nullToUndefined,
pipe, // Not sure what this is, it's not documented anywhere
type BaseQuery,
type GroqdParseError,
type InferType,
type Selection,
type TypeFromSelection,
} from "groqd";
+1
I need type BaseType and ButFirst among a few others