import type { KeyValueCache } from '@apollo/utils.keyvaluecache'; import type { Logger } from '@apollo/utils.logger'; import type { Fetcher } from '@apollo/utils.fetcher'; import { CdmLogger } from '@cdm-logger/core'; export interface IDataSourceConfig { context: TContext; cache?: KeyValueCache; fetch?: Fetcher; logger?: Logger; } export interface IDirectiveOptions extends Omit, 'context'> { [key: string]: any; logger?: CdmLogger.ILogger; }