Preview:```ts
type ConfigGoogleSheets = {
spreadsheetId: string
valueRange: string
apiKey: string
}
const providers = {
rest: () => {},
"google-sheets": (config: ConfigGoogleSheets) =>
"https://sheets.googleapis.com/v4/spreadsheets/" +
config.spreadsheetId +
"/values/" +
config.valueRange +
"/?key=" +
config.apiKey,
}
type Providers = typeof providers
type Provider = keyof Providers
export const requestBuilder = <T extends Provider>({
type,
config,
}: {
type: T
config: Parameters<Providers[T]>[0]
}) =>
...```