// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.gcp.composer.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Double;
import java.lang.Integer;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class EnvironmentConfigWorkloadsConfigWorkerArgs extends com.pulumi.resources.ResourceArgs {

    public static final EnvironmentConfigWorkloadsConfigWorkerArgs Empty = new EnvironmentConfigWorkloadsConfigWorkerArgs();

    @Import(name="cpu")
    private @Nullable Output<Double> cpu;

    public Optional<Output<Double>> cpu() {
        return Optional.ofNullable(this.cpu);
    }

    @Import(name="maxCount")
    private @Nullable Output<Integer> maxCount;

    public Optional<Output<Integer>> maxCount() {
        return Optional.ofNullable(this.maxCount);
    }

    @Import(name="memoryGb")
    private @Nullable Output<Double> memoryGb;

    public Optional<Output<Double>> memoryGb() {
        return Optional.ofNullable(this.memoryGb);
    }

    @Import(name="minCount")
    private @Nullable Output<Integer> minCount;

    public Optional<Output<Integer>> minCount() {
        return Optional.ofNullable(this.minCount);
    }

    @Import(name="storageGb")
    private @Nullable Output<Double> storageGb;

    public Optional<Output<Double>> storageGb() {
        return Optional.ofNullable(this.storageGb);
    }

    private EnvironmentConfigWorkloadsConfigWorkerArgs() {}

    private EnvironmentConfigWorkloadsConfigWorkerArgs(EnvironmentConfigWorkloadsConfigWorkerArgs $) {
        this.cpu = $.cpu;
        this.maxCount = $.maxCount;
        this.memoryGb = $.memoryGb;
        this.minCount = $.minCount;
        this.storageGb = $.storageGb;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(EnvironmentConfigWorkloadsConfigWorkerArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private EnvironmentConfigWorkloadsConfigWorkerArgs $;

        public Builder() {
            $ = new EnvironmentConfigWorkloadsConfigWorkerArgs();
        }

        public Builder(EnvironmentConfigWorkloadsConfigWorkerArgs defaults) {
            $ = new EnvironmentConfigWorkloadsConfigWorkerArgs(Objects.requireNonNull(defaults));
        }

        public Builder cpu(@Nullable Output<Double> cpu) {
            $.cpu = cpu;
            return this;
        }

        public Builder cpu(Double cpu) {
            return cpu(Output.of(cpu));
        }

        public Builder maxCount(@Nullable Output<Integer> maxCount) {
            $.maxCount = maxCount;
            return this;
        }

        public Builder maxCount(Integer maxCount) {
            return maxCount(Output.of(maxCount));
        }

        public Builder memoryGb(@Nullable Output<Double> memoryGb) {
            $.memoryGb = memoryGb;
            return this;
        }

        public Builder memoryGb(Double memoryGb) {
            return memoryGb(Output.of(memoryGb));
        }

        public Builder minCount(@Nullable Output<Integer> minCount) {
            $.minCount = minCount;
            return this;
        }

        public Builder minCount(Integer minCount) {
            return minCount(Output.of(minCount));
        }

        public Builder storageGb(@Nullable Output<Double> storageGb) {
            $.storageGb = storageGb;
            return this;
        }

        public Builder storageGb(Double storageGb) {
            return storageGb(Output.of(storageGb));
        }

        public EnvironmentConfigWorkloadsConfigWorkerArgs build() {
            return $;
        }
    }

}
