"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.AndroidBuildData = exports.IOSBuildData = exports.BuildData = void 0;
const prepare_data_1 = require("./prepare-data");
class BuildData extends prepare_data_1.PrepareData {
    constructor(projectDir, platform, data) {
        super(projectDir, platform, data);
        this.device = data.device;
        this._device = data === null || data === void 0 ? void 0 : data._device;
        this.emulator = data.emulator;
        this.clean = data.clean;
        this.buildForDevice = data.buildForDevice || data.forDevice;
        this.buildOutputStdio = data.buildOutputStdio;
        this.outputPath = data.outputPath;
        this.copyTo = data.copyTo;
    }
}
exports.BuildData = BuildData;
class IOSBuildData extends BuildData {
    constructor(projectDir, platform, data) {
        super(projectDir, platform, data);
        this.teamId = data.teamId;
        this.provision = data.provision;
        this.mobileProvisionData = data.mobileProvisionData;
        this.buildForAppStore = data.buildForAppStore;
        this.iCloudContainerEnvironment = data.iCloudContainerEnvironment;
    }
}
exports.IOSBuildData = IOSBuildData;
class AndroidBuildData extends BuildData {
    constructor(projectDir, platform, data) {
        super(projectDir, platform, data);
        this.keyStoreAlias = data.keyStoreAlias;
        this.keyStorePath = data.keyStorePath;
        this.keyStoreAliasPassword = data.keyStoreAliasPassword;
        this.keyStorePassword = data.keyStorePassword;
        this.androidBundle = data.androidBundle || data.aab;
        this.gradlePath = data.gradlePath;
        this.gradleArgs = data.gradleArgs;
    }
}
exports.AndroidBuildData = AndroidBuildData;
