export declare enum SCOPE {
    local = "local",
    external = "external",
    lock = "lock",
    all = "all"
}
export declare enum LOOKUP_TYPE {
    packagName = "packageName",
    fileName = "fileName"
}
interface DiscoverRequest {
    scope: SCOPE;
    type: LOOKUP_TYPE;
}
interface DiscoverManyRequest {
    fileNames: string[];
    scope: SCOPE;
    type: LOOKUP_TYPE;
}
interface DiscoverOneByPackageNameRequest {
    packageName: string;
    scope: SCOPE;
}
interface DiscoverManyByPackageNameRequest {
    packageNames: string[];
    scope: SCOPE;
}
interface CompareRequest {
    local: string[];
    external: string[];
}
export interface OneFileElement {
    name: string;
    p: string;
}
export interface CompareResult {
    local: OneFileElement[];
    external: OneFileElement[];
}
type DiscoverResult = string[];
export declare const normalizeDiscover: ({ segments }: {
    segments: string[];
}) => string | undefined;
export declare const compare: (request: CompareRequest) => CompareResult;
export declare const discoverManyByPackageName: (request: DiscoverManyByPackageNameRequest) => DiscoverResult;
export declare const discoverOneByPackageName: (request: DiscoverOneByPackageNameRequest) => DiscoverResult;
export declare const discoverMany: (request: DiscoverManyRequest) => Promise<DiscoverResult>;
export declare const discoverManyDatasources: (request: DiscoverManyRequest) => Promise<DiscoverResult>;
export declare const discoverStories: (request: DiscoverManyRequest) => DiscoverResult;
export declare const discoverMigrationConfig: (request: DiscoverManyRequest) => DiscoverResult;
export declare const discoverVersionMapping: (request: DiscoverManyRequest) => DiscoverResult;
export declare const discoverDatasources: (request: DiscoverRequest) => Promise<DiscoverResult>;
export declare const filesPattern: ({ mainDirectory, componentDirectories, ext, }: {
    mainDirectory: string;
    componentDirectories: string[];
    ext: string;
}) => string;
export declare const discover: (request: DiscoverRequest) => Promise<DiscoverResult>;
export declare const discoverResolvers: (request: DiscoverRequest) => Promise<DiscoverResult>;
export declare const discoverRoles: (request: DiscoverRequest) => Promise<DiscoverResult>;
export declare const discoverManyRoles: (request: DiscoverManyRequest) => Promise<DiscoverResult>;
export declare const discoverAllComponents: () => Promise<{
    local: OneFileElement[];
    external: OneFileElement[];
}>;
export {};
