UNPKG

postgraphile

Version:

A GraphQL schema created by reflection over a PostgreSQL schema 🐘 (previously known as PostGraphQL)

21 lines (20 loc) 1.65 kB
/// <reference types="node" /> import { Pool, PoolConfig } from 'pg'; import { IncomingMessage, ServerResponse } from 'http'; import { GraphQLSchema } from 'graphql'; import { EventEmitter } from 'events'; import { PostGraphileOptions, HttpRequestHandler } from '../interfaces'; import { ShutdownActions } from './shutdownActions'; export interface PostgraphileSchemaBuilder<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse> { _emitter: EventEmitter; getGraphQLSchema: () => Promise<GraphQLSchema>; options: PostGraphileOptions<Request, Response>; } /** * Creates a PostGraphile Http request handler by first introspecting the * database to get a GraphQL schema, and then using that to create the Http * request handler. */ export declare function getPostgraphileSchemaBuilder<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse>(pgPool: Pool, schema: string | Array<string>, incomingOptions: PostGraphileOptions<Request, Response>, shutdownActions?: ShutdownActions): PostgraphileSchemaBuilder; export default function postgraphile<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse>(poolOrConfig?: Pool | PoolConfig | string, schema?: string | Array<string>, options?: PostGraphileOptions<Request, Response>): HttpRequestHandler; export default function postgraphile<Request extends IncomingMessage = IncomingMessage, Response extends ServerResponse = ServerResponse>(poolOrConfig?: Pool | PoolConfig | string, options?: PostGraphileOptions<Request, Response>): HttpRequestHandler;