Your IP : 216.73.217.13


Current Path : /home/deltalab/PMS/sms-connector/node_modules/graphql-compose-mongoose/lib/
Upload File :
Current File : //home/deltalab/PMS/sms-connector/node_modules/graphql-compose-mongoose/lib/composeMongoose.d.ts

import type { SchemaComposer, Resolver, InputTypeComposer } from 'graphql-compose';
import { ObjectTypeComposer } from 'graphql-compose';
import type { Model, Document } from 'mongoose';
import { resolverFactory } from './resolvers';
export declare type TypeConverterInputTypeOpts = {
    name?: string;
    description?: string;
    onlyFields?: string[];
    removeFields?: string[];
    requiredFields?: string[];
    fields?: {
        only?: string[];
        remove?: string[];
        required?: string[];
    };
};
export declare type ComposeMongooseOpts<TContext = any> = {
    schemaComposer?: SchemaComposer<TContext>;
    name?: string;
    description?: string;
    onlyFields?: string[];
    removeFields?: string[];
    inputType?: TypeConverterInputTypeOpts;
    defaultsAsNonNull?: boolean;
    fields?: {
        only?: string[];
        remove?: string[];
    };
};
export declare type GenerateResolverType<TDoc extends Document, TContext = any> = {
    [resolver in keyof typeof resolverFactory]: <TSource = any>(opts?: Parameters<typeof resolverFactory[resolver]>[2]) => typeof resolverFactory[resolver] extends (...args: any) => Resolver<any, any, infer TArgs, any> ? Resolver<TSource, TContext, TArgs, TDoc> : any;
};
export declare type ObjectTypeComposerWithMongooseResolvers<TDoc extends Document, TContext = any> = ObjectTypeComposer<TDoc, TContext> & {
    mongooseResolvers: GenerateResolverType<TDoc, TContext>;
};
export declare function composeMongoose<TDoc extends Document, TContext = any>(model: Model<TDoc>, opts?: ComposeMongooseOpts<TContext>): ObjectTypeComposerWithMongooseResolvers<TDoc, TContext>;
export declare function prepareFields(tc: ObjectTypeComposer<any, any>, opts?: ComposeMongooseOpts<any>): void;
export declare function createInputType(tc: ObjectTypeComposer<any, any>, inputTypeOpts?: TypeConverterInputTypeOpts): void;
export declare function prepareInputFields(inputTypeComposer: InputTypeComposer<any>, inputTypeOpts?: TypeConverterInputTypeOpts): void;
//# sourceMappingURL=composeMongoose.d.ts.map