Learn more  » Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Bower components Debian packages RPM packages NuGet packages

skava / @skava/graphql   js

Repository URL to install this package:

Version: 9.0.35-framework 

/ dist / deps / LoggingExtension.d.ts

/**
 * @see https://www.apollographql.com/docs/apollo-server/features/metrics.html#Granular-Logs
 */
import { GraphQLExtension, GraphQLResponse } from 'graphql-extensions';
/**
 * @todo this causes multiple graphql errors?
 */
import { DocumentNode } from 'graphql';
export declare enum LogAction {
    request = 0,
    parse = 1,
    validation = 2,
    execute = 3,
    setup = 4,
    cleanup = 5
}
export declare enum LogStep {
    start = 0,
    end = 1,
    status = 2
}
export interface LogMessage {
    action: LogAction;
    step: LogStep;
    key?: string;
    data?: any;
}
export interface LogFunction {
    (message: LogMessage): any;
}
export declare const DEFAULT_GRAPHQL_LOGGER: (...args: any[]) => void;
export declare class LoggingExtension<TContext = any> implements GraphQLExtension<TContext> {
    private logFunction;
    constructor(logFunction?: LogFunction);
    requestDidStart(options: {
        request: Request;
        queryString?: string;
        parsedQuery?: DocumentNode;
        operationName?: string;
        variables?: {
            [key: string]: any;
        };
    }): (...errors: Error[]) => void;
    parsingDidStart(): () => void;
    validationDidStart(): () => void;
    executionDidStart(): () => void;
    willSendResponse(o: {
        graphqlResponse: GraphQLResponse;
    }): void;
}