@@ -660,8 +660,16 @@ declare namespace postgres {
660660 | Fragment
661661 | Fragment [ ]
662662
663- interface Sql < TTypes extends Record < string , unknown > = { } > {
663+ interface UnsafeQueryOptions {
664664 /**
665+ * When executes query as prepared statement.
666+ * @default false
667+ */
668+ prepare ?: boolean | undefined ;
669+ }
670+
671+ interface ISql < TTypes extends Record < string , unknown > = { } > {
672+ /**
665673 * Query helper
666674 * @param first Define how the helper behave
667675 * @param rest Other optional arguments, depending on the helper type
@@ -677,22 +685,32 @@ declare namespace postgres {
677685 */
678686 < T extends readonly ( object | undefined ) [ ] = Row [ ] > ( template : TemplateStringsArray , ...parameters : readonly ( ParameterOrFragment < TTypes [ keyof TTypes ] > ) [ ] ) : PendingQuery < T > ;
679687
688+ types : this[ 'typed' ] ;
689+ typed : ( < T > ( value : T , oid : number ) => Parameter < T > ) & {
690+ [ name in keyof TTypes ] : ( value : TTypes [ name ] ) => postgres . Parameter < TTypes [ name ] >
691+ } ;
692+
693+ unsafe < T extends any [ ] = ( Row & Iterable < Row > ) [ ] > ( query : string , parameters ?: ( ParameterOrJSON < TTypes [ keyof TTypes ] > ) [ ] | undefined , queryOptions ?: UnsafeQueryOptions | undefined ) : PendingQuery < T > ;
694+
695+ notify ( channel : string , payload : string ) : PendingRequest ;
696+
697+ array < T extends SerializableParameter < TTypes [ keyof TTypes ] > [ ] = SerializableParameter < TTypes [ keyof TTypes ] > [ ] > ( value : T , type ?: number | undefined ) : ArrayParameter < T > ;
698+ file < T extends readonly any [ ] = Row [ ] > ( path : string | Buffer | URL | number , options ?: { cache ?: boolean | undefined } | undefined ) : PendingQuery < T > ;
699+ file < T extends readonly any [ ] = Row [ ] > ( path : string | Buffer | URL | number , args : ( ParameterOrJSON < TTypes [ keyof TTypes ] > ) [ ] , options ?: { cache ?: boolean | undefined } | undefined ) : PendingQuery < T > ;
700+ json ( value : JSONValue ) : Parameter ;
701+ }
702+
703+ interface Sql < TTypes extends Record < string , unknown > = { } > extends ISql < TTypes > {
680704 CLOSE : { } ;
681705 END : this[ 'CLOSE' ] ;
682706 PostgresError : typeof PostgresError ;
683707
684708 options : ParsedOptions < TTypes > ;
685709 parameters : ConnectionParameters ;
686- types : this[ 'typed' ] ;
687- typed : ( < T > ( value : T , oid : number ) => Parameter < T > ) & {
688- [ name in keyof TTypes ] : ( value : TTypes [ name ] ) => postgres . Parameter < TTypes [ name ] >
689- } ;
690710
691- unsafe < T extends any [ ] = ( Row & Iterable < Row > ) [ ] > ( query : string , parameters ?: ( ParameterOrJSON < TTypes [ keyof TTypes ] > ) [ ] | undefined , queryOptions ?: UnsafeQueryOptions | undefined ) : PendingQuery < T > ;
692711 end ( options ?: { timeout ?: number | undefined } | undefined ) : Promise < void > ;
693712
694713 listen ( channel : string , onnotify : ( value : string ) => void , onlisten ?: ( ( ) => void ) | undefined ) : ListenRequest ;
695- notify ( channel : string , payload : string ) : PendingRequest ;
696714
697715 subscribe ( event : string , cb : ( row : Row | null , info : ReplicationEvent ) => void , onsubscribe ?: ( ( ) => void ) , onerror ?: ( ( ) => any ) ) : Promise < SubscriptionHandle > ;
698716
@@ -701,36 +719,10 @@ declare namespace postgres {
701719 begin < T > ( cb : ( sql : TransactionSql < TTypes > ) => T | Promise < T > ) : Promise < UnwrapPromiseArray < T > > ;
702720 begin < T > ( options : string , cb : ( sql : TransactionSql < TTypes > ) => T | Promise < T > ) : Promise < UnwrapPromiseArray < T > > ;
703721
704- array < T extends SerializableParameter < TTypes [ keyof TTypes ] > [ ] = SerializableParameter < TTypes [ keyof TTypes ] > [ ] > ( value : T , type ?: number | undefined ) : ArrayParameter < T > ;
705- file < T extends readonly any [ ] = Row [ ] > ( path : string | Buffer | URL | number , options ?: { cache ?: boolean | undefined } | undefined ) : PendingQuery < T > ;
706- file < T extends readonly any [ ] = Row [ ] > ( path : string | Buffer | URL | number , args : ( ParameterOrJSON < TTypes [ keyof TTypes ] > ) [ ] , options ?: { cache ?: boolean | undefined } | undefined ) : PendingQuery < T > ;
707- json ( value : JSONValue ) : Parameter ;
708-
709722 reserve ( ) : Promise < ReservedSql < TTypes > >
710723 }
711724
712- interface UnsafeQueryOptions {
713- /**
714- * When executes query as prepared statement.
715- * @default false
716- */
717- prepare ?: boolean | undefined ;
718- }
719-
720- interface TransactionSql < TTypes extends Record < string , unknown > = { } > extends Omit < Sql < TTypes > ,
721- 'parameters' |
722- 'largeObject' |
723- 'subscribe' |
724- 'CLOSE' |
725- 'END' |
726- 'PostgresError' |
727- 'options' |
728- 'reserve' |
729- 'listen' |
730- 'begin' |
731- 'close' |
732- 'end'
733- > {
725+ interface TransactionSql < TTypes extends Record < string , unknown > = { } > extends ISql < TTypes > {
734726 savepoint < T > ( cb : ( sql : TransactionSql < TTypes > ) => T | Promise < T > ) : Promise < UnwrapPromiseArray < T > > ;
735727 savepoint < T > ( name : string , cb : ( sql : TransactionSql < TTypes > ) => T | Promise < T > ) : Promise < UnwrapPromiseArray < T > > ;
736728
0 commit comments