import type { TransportEntry } from '@graphql-mesh/transport-common';
import type { SubschemaConfig } from '@graphql-tools/delegate';
import { type TypeSource } from '@graphql-tools/utils';
import { type getOnSubgraphExecute } from '../utils.js';
export interface HandleFederationSubschemaOpts {
    subschemaConfig: SubschemaConfig & {
        endpoint?: string;
    };
    realSubgraphNameMap?: Map<string, string>;
    schemaDirectives?: Record<string, any>;
    transportEntryMap: Record<string, TransportEntry>;
    additionalTypeDefs: TypeSource[];
    stitchingDirectivesTransformer: (subschemaConfig: SubschemaConfig) => SubschemaConfig;
    onSubgraphExecute: ReturnType<typeof getOnSubgraphExecute>;
}
export declare function handleFederationSubschema({ subschemaConfig, realSubgraphNameMap, schemaDirectives, transportEntryMap, additionalTypeDefs, stitchingDirectivesTransformer, onSubgraphExecute, }: HandleFederationSubschemaOpts): SubschemaConfig<any, any, any, Record<string, any>> & {
    endpoint?: string;
};
