import { type Logger as LegacyLogger } from '@graphql-hive/core';
import Command from '../base-command';
type ServiceName = string;
type Sdl = string;
export type ServiceInput = {
    name: ServiceName;
    url: string;
    sdl?: string;
};
export type Service = {
    name: ServiceName;
    url: string;
    sdl: Sdl;
};
type ServiceWithSource = {
    name: ServiceName;
    url: string;
    sdl: Sdl;
    input: {
        kind: 'file';
        path: string;
    } | {
        kind: 'url';
        url: string;
    };
};
export declare function resolveServices(services: ServiceInput[], logger: LegacyLogger): Promise<Array<ServiceWithSource>>;
export default class Dev extends Command<typeof Dev> {
    static description: string;
    static flags: {
        'registry.endpoint': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        /** @deprecated */
        registry: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        'registry.accessToken': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        /** @deprecated */
        token: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        service: import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
        url: import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
        schema: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
        watch: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        watchInterval: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
        write: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
        remote: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        unstable__forceLatest: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
        target: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
    };
    run(): Promise<void>;
    private composeLocally;
    private compose;
    private watch;
    private resolveServices;
}
export {};
//# sourceMappingURL=dev.d.ts.map