diff --git a/.node-version b/.node-version index 7d41c73..d845d9d 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -22.14.0 +24.14.0 diff --git a/package.json b/package.json index 32dceb1..ca6b04b 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ }, "license": "MIT", "main": "src/index.js", + "types": "src/index.d.ts", "scripts": { "test": "jest --colors --verbose", "lint": "eslint .", @@ -49,6 +50,7 @@ "wrap-ansi": "7.0.0" }, "peerDependencies": { + "@apollo/server": ">=4", "graphql": "*" }, "jest": { diff --git a/src/index.d.ts b/src/index.d.ts new file mode 100644 index 0000000..7dd22c4 --- /dev/null +++ b/src/index.d.ts @@ -0,0 +1,35 @@ +import type { ApolloServerPlugin, BaseContext } from '@apollo/server' +import type * as http from 'http' +import type * as https from 'https' + +export interface LogqlOptions> { + apiKey: string + environment?: string + endpoint?: string + + sendVariables?: boolean + sendHeaders?: boolean + runInTests?: boolean + verbose?: boolean + + timeout?: number + reportIntervalMs?: number + reportEntriesThreshold?: number + cacheSize?: number + + sampling?: number + + agent?: http.Agent | https.Agent | null + + userId?: ((context: TContext, headers: unknown, requestContext: unknown) => unknown) | null +} + +declare function LogqlApolloPlugin( + options?: LogqlOptions +): ApolloServerPlugin + +declare namespace LogqlApolloPlugin { + function fromEnv(): ApolloServerPlugin +} + +export = LogqlApolloPlugin