import { GatewayConfig, ServiceEndpointDefinition } from '@apollo/gateway';
import { Config } from '@harmonyjs/apollo-fastify';
import { RouteOptions } from 'fastify';
import { Controller } from '@harmonyjs/types-server';
declare const ControllerApolloGateway: Controller<{
    path: string;
    enablePlayground?: boolean;
    services: ServiceEndpointDefinition[];
    authentication?: Controller & {
        validator: string;
    };
    gatewayConfig?: Omit<GatewayConfig, 'serviceList' | 'buildService'>;
    apolloConfig?: Omit<Config, 'gateway' | 'playground' | 'introspection' | 'context' | 'subscriptions'>;
    routeConfig?: Omit<RouteOptions, 'auth'>;
    servicePoller?: () => void;
}>;
export default ControllerApolloGateway;
