Your IP : 216.73.217.13


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

import { ObjectTypeComposer, InterfaceTypeComposer, Resolver, ResolverResolveParams, ObjectTypeComposerFieldConfigMap } from 'graphql-compose';
import { PageInfoType, ConnectionType } from './types/connectionType';
import { CursorDataType } from './cursor';
export declare type ConnectionResolverOpts<TContext> = {
    findManyResolver: Resolver;
    countResolver: Resolver;
    sort: ConnectionSortMapOpts;
    name?: string;
    defaultLimit?: number | undefined;
    edgeTypeName?: string;
    edgeFields?: ObjectTypeComposerFieldConfigMap<any, TContext>;
};
export declare type ConnectionSortOpts<TSource = any, TContext = any> = {
    value: any;
    cursorFields: string[];
    beforeCursorQuery: (rawQuery: any, cursorData: CursorDataType, resolveParams: Partial<ResolverResolveParams<TSource, TContext, ConnectionTArgs>>) => any;
    afterCursorQuery: (rawQuery: any, cursorData: CursorDataType, resolveParams: Partial<ResolverResolveParams<TSource, TContext, ConnectionTArgs>>) => any;
};
export declare type ConnectionSortMapOpts = {
    [sortName: string]: ConnectionSortOpts;
};
export interface ConnectionTArgs {
    first?: number | null;
    after?: string;
    last?: number | null;
    before?: string;
    sort?: Record<string, any>;
    filter?: Record<string, any>;
    [argName: string]: any;
}
export declare function prepareConnectionResolver<TSource, TContext>(tc: ObjectTypeComposer<TSource, TContext> | InterfaceTypeComposer<TSource, TContext>, opts: ConnectionResolverOpts<TContext>): Resolver<TSource, TContext>;
export declare function preparePageInfo(edges: {
    cursor: string;
    [key: string]: any;
}[], args: {
    last?: number | null;
    first?: number | null;
    after?: string;
    before?: string;
}, limit: number, skip: number): PageInfoType;
export declare function prepareRawQuery(rp: Partial<ResolverResolveParams<any, any, ConnectionTArgs>>, sortConfig: ConnectionSortOpts): void;
export declare function prepareLimitSkipFallback(rp: ResolverResolveParams<any, any, ConnectionTArgs>, limit: number, skip: number): [number, number];
export declare function emptyConnection(): ConnectionType;
export declare function findSortConfig(configs: ConnectionSortMapOpts, val: unknown): ConnectionSortOpts | undefined;
//# sourceMappingURL=connection.d.ts.map