import type { AppTask } from '../catalogue';
import type { AppType, AppSurface } from '@playdrop/types';
export type AppBuildMetadata = {
    displayName?: string;
    description?: string;
    type?: AppType;
    emoji?: string | null;
    color?: string | null;
    surfaceTargets?: AppSurface[];
    entryPoint?: string;
};
export type AppBuildArtifacts = {
    bundleFile: File;
    bundleHash: string;
    sourceFile: File;
    sourceHash: string;
    metadata: AppBuildMetadata;
    ecsFile?: File;
    ecsHash?: string;
    serverFile?: File;
    serverHash?: string;
};
export declare function runNpmScript(projectDir: string, script: string): Promise<void>;
export declare function buildApp(task: AppTask): Promise<AppBuildArtifacts>;
