import { IHttpConfig, PickRequired, PrismHttpComponents, PrismHttpInstance } from '@stoplight/prism-http'; import { Logger } from 'pino'; export interface IPrismHttpServerOpts { components: PickRequired, 'logger'>; config: IHttpConfig; cors: boolean; } export interface IPrismHttpServer { readonly prism: PrismHttpInstance; readonly logger: Logger; close: () => Promise; listen: (port: number, address?: string, backlog?: number) => Promise; } export type ThenArg = T extends Promise ? U : T extends (...args: unknown[]) => Promise ? U : never;