import type { IMastraLogger } from '@mastra/core/logger';
export type WorkspacePackageInfo = {
    location: string;
    dependencies: Record<string, string> | undefined;
    version: string | undefined;
};
type TransitiveDependencyResult = {
    resolutions: Record<string, string>;
    usedWorkspacePackages: Set<string>;
};
/**
 * A utility function around find-workspaces to get information about:
 * - Which workspace packages are available in the project
 * - What is the workspace root location
 * - Is the current package a workspace package
 *
 * Because `findWorkspacesRoot` only traverses up until it finds workspace information, but doesn't check if the current package is even part of the workspace. We rather want to return `null` for these cases because in other code paths we use `workspaceRoot || projectRoot` to determine the root of the project.
 *
 * @params dir - The directory to start searching from (default: `process.cwd()`)
 * @params location - The location of the current package (usually the directory containing the package.json)
 */
export declare function getWorkspaceInformation({ dir, mastraEntryFile, }: {
    dir?: string;
    mastraEntryFile: string;
}): Promise<{
    workspaceMap: Map<string, {
        location: string;
        dependencies: Record<string, string> | undefined;
        version: string | undefined;
    }>;
    workspaceRoot: string | undefined;
    isWorkspacePackage: boolean;
}>;
/**
 * Collects all transitive workspace dependencies and their TGZ paths
 */
export declare const collectTransitiveWorkspaceDependencies: ({ workspaceMap, initialDependencies, logger, }: {
    workspaceMap: Map<string, WorkspacePackageInfo>;
    initialDependencies: Set<string>;
    logger: IMastraLogger;
}) => TransitiveDependencyResult;
/**
 * Creates TGZ packages for workspace dependencies in the workspace-module directory
 */
export declare const packWorkspaceDependencies: ({ workspaceMap, usedWorkspacePackages, bundleOutputDir, logger, }: {
    workspaceMap: Map<string, WorkspacePackageInfo>;
    bundleOutputDir: string;
    logger: IMastraLogger;
    usedWorkspacePackages: Set<string>;
}) => Promise<void>;
export {};
//# sourceMappingURL=workspaceDependencies.d.ts.map