/// <reference types="node" />
import { Transform, TransformCallback } from 'stream';
import Vinyl from 'vinyl';
import { SupportedDeviceCapabilities } from './capabilities';
import { ProjectConfiguration } from './ProjectConfiguration';
interface Tile {
    id: string;
    name: string;
    platforms: string[];
}
interface Components {
    watch?: {
        [platform: string]: {
            filename: string;
            platform: string[];
            supports?: SupportedDeviceCapabilities;
        };
    };
    companion?: {
        filename: string;
    };
    tiles?: Tile[];
}
declare class AppPackageManifestTransform extends Transform {
    projectConfig: ProjectConfiguration;
    buildID: string;
    sourceMaps: {};
    components: Components;
    hasJS: boolean;
    hasNative: boolean;
    constructor(projectConfig: ProjectConfiguration, buildID: string);
    private populateTileData;
    private transformComponentBundle;
    _transform(file: Vinyl, _: unknown, next: TransformCallback): void;
    _flush(callback: TransformCallback): void;
}
export default function appPackageManifest({ projectConfig, buildId, }: {
    projectConfig: ProjectConfiguration;
    buildId: string;
}): AppPackageManifestTransform;
export {};
