@pgtyped/query
This package provides the sql
tagged template.
The sql
tagged template requires two generics: <TResult, TParam>
.
TResult
is the query result type and TParam
is the query parameters type. Both types should be imported from query types files generated by pgtyped
.
To run a query defined with the sql
tagged template, call the sql.run
method.
The sql.run
method automatically enforces correct input TParams
and output TResult
types.
public run: (
params: TParams,
dbConnection: IDatabaseConnection,
) => Promise<TResult[]>;
Here dbConnection
is any object that satisifies the IDatabaseConnection
interface. It is used to actually send the query to the DB for execution.
interface IDatabaseConnection {
query: (query: string, bindings: any[]) => Promise<{ rows: any[] }>;
}
This is usually the client
object created with node-postgres, but can be any other connection of your choice.
This package is part of the pgtyped project.
Refer to root README for details.