sdk/java/src/main/java/com/pulumi/ovh/CloudProject/CloudProjectFunctions.java
// *** 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.ovh.CloudProject;

import com.pulumi.core.Output;
import com.pulumi.core.TypeShape;
import com.pulumi.deployment.Deployment;
import com.pulumi.deployment.InvokeOptions;
import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerFilterArgs;
import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerFilterPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerRegistryArgs;
import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerRegistryPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistriesArgs;
import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistriesPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryUsersArgs;
import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryUsersPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetFailoverIpAttachArgs;
import com.pulumi.ovh.CloudProject.inputs.GetFailoverIpAttachPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeIpRestrictionsArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeIpRestrictionsPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolNodesArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolNodesPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeNodesArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeNodesPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeOidcArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubeOidcPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetKubePlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespaceArgs;
import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacePlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacesArgs;
import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacesPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetM3dbUserArgs;
import com.pulumi.ovh.CloudProject.inputs.GetM3dbUserPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;
import com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternArgs;
import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsArgs;
import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchUserArgs;
import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchUserPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetRedisUserArgs;
import com.pulumi.ovh.CloudProject.inputs.GetRedisUserPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetRegionArgs;
import com.pulumi.ovh.CloudProject.inputs.GetRegionPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetRegionsArgs;
import com.pulumi.ovh.CloudProject.inputs.GetRegionsPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialsArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialsPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserS3PolicyArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUserS3PolicyPlainArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUsersArgs;
import com.pulumi.ovh.CloudProject.inputs.GetUsersPlainArgs;
import com.pulumi.ovh.CloudProject.outputs.GetCapabilitiesContainerFilterResult;
import com.pulumi.ovh.CloudProject.outputs.GetCapabilitiesContainerRegistryInvokeResult;
import com.pulumi.ovh.CloudProject.outputs.GetContainerRegistriesInvokeResult;
import com.pulumi.ovh.CloudProject.outputs.GetContainerRegistryResult;
import com.pulumi.ovh.CloudProject.outputs.GetContainerRegistryUsersInvokeResult;
import com.pulumi.ovh.CloudProject.outputs.GetFailoverIpAttachResult;
import com.pulumi.ovh.CloudProject.outputs.GetKubeIpRestrictionsResult;
import com.pulumi.ovh.CloudProject.outputs.GetKubeNodePoolNodesResult;
import com.pulumi.ovh.CloudProject.outputs.GetKubeNodePoolResult;
import com.pulumi.ovh.CloudProject.outputs.GetKubeNodesResult;
import com.pulumi.ovh.CloudProject.outputs.GetKubeOidcResult;
import com.pulumi.ovh.CloudProject.outputs.GetKubeResult;
import com.pulumi.ovh.CloudProject.outputs.GetM3dbNamespaceResult;
import com.pulumi.ovh.CloudProject.outputs.GetM3dbNamespacesResult;
import com.pulumi.ovh.CloudProject.outputs.GetM3dbUserResult;
import com.pulumi.ovh.CloudProject.outputs.GetMongoDbUserResult;
import com.pulumi.ovh.CloudProject.outputs.GetOpenSearchPatternResult;
import com.pulumi.ovh.CloudProject.outputs.GetOpenSearchPatternsResult;
import com.pulumi.ovh.CloudProject.outputs.GetOpenSearchUserResult;
import com.pulumi.ovh.CloudProject.outputs.GetRedisUserResult;
import com.pulumi.ovh.CloudProject.outputs.GetRegionResult;
import com.pulumi.ovh.CloudProject.outputs.GetRegionsResult;
import com.pulumi.ovh.CloudProject.outputs.GetUserResult;
import com.pulumi.ovh.CloudProject.outputs.GetUserS3CredentialResult;
import com.pulumi.ovh.CloudProject.outputs.GetUserS3CredentialsResult;
import com.pulumi.ovh.CloudProject.outputs.GetUserS3PolicyResult;
import com.pulumi.ovh.CloudProject.outputs.GetUsersResult;
import com.pulumi.ovh.Utilities;
import java.util.concurrent.CompletableFuture;

public final class CloudProjectFunctions {
    /**
     * Use this data source to filter the list of container registry capabilities associated with a public cloud project to match one and only one capability.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerFilterArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capability = CloudProjectFunctions.getCapabilitiesContainerFilter(GetCapabilitiesContainerFilterArgs.builder()
     *             .planName(&#34;SMALL&#34;)
     *             .region(&#34;GRA&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCapabilitiesContainerFilterResult> getCapabilitiesContainerFilter(GetCapabilitiesContainerFilterArgs args) {
        return getCapabilitiesContainerFilter(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to filter the list of container registry capabilities associated with a public cloud project to match one and only one capability.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerFilterArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capability = CloudProjectFunctions.getCapabilitiesContainerFilter(GetCapabilitiesContainerFilterArgs.builder()
     *             .planName(&#34;SMALL&#34;)
     *             .region(&#34;GRA&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCapabilitiesContainerFilterResult> getCapabilitiesContainerFilterPlain(GetCapabilitiesContainerFilterPlainArgs args) {
        return getCapabilitiesContainerFilterPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to filter the list of container registry capabilities associated with a public cloud project to match one and only one capability.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerFilterArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capability = CloudProjectFunctions.getCapabilitiesContainerFilter(GetCapabilitiesContainerFilterArgs.builder()
     *             .planName(&#34;SMALL&#34;)
     *             .region(&#34;GRA&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCapabilitiesContainerFilterResult> getCapabilitiesContainerFilter(GetCapabilitiesContainerFilterArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter", TypeShape.of(GetCapabilitiesContainerFilterResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to filter the list of container registry capabilities associated with a public cloud project to match one and only one capability.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerFilterArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capability = CloudProjectFunctions.getCapabilitiesContainerFilter(GetCapabilitiesContainerFilterArgs.builder()
     *             .planName(&#34;SMALL&#34;)
     *             .region(&#34;GRA&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCapabilitiesContainerFilterResult> getCapabilitiesContainerFilterPlain(GetCapabilitiesContainerFilterPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getCapabilitiesContainerFilter:getCapabilitiesContainerFilter", TypeShape.of(GetCapabilitiesContainerFilterResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the container registry capabilities of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capabilities = CloudProjectFunctions.getCapabilitiesContainerRegistry(GetCapabilitiesContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCapabilitiesContainerRegistryInvokeResult> getCapabilitiesContainerRegistry(GetCapabilitiesContainerRegistryArgs args) {
        return getCapabilitiesContainerRegistry(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the container registry capabilities of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capabilities = CloudProjectFunctions.getCapabilitiesContainerRegistry(GetCapabilitiesContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCapabilitiesContainerRegistryInvokeResult> getCapabilitiesContainerRegistryPlain(GetCapabilitiesContainerRegistryPlainArgs args) {
        return getCapabilitiesContainerRegistryPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the container registry capabilities of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capabilities = CloudProjectFunctions.getCapabilitiesContainerRegistry(GetCapabilitiesContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetCapabilitiesContainerRegistryInvokeResult> getCapabilitiesContainerRegistry(GetCapabilitiesContainerRegistryArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry", TypeShape.of(GetCapabilitiesContainerRegistryInvokeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the container registry capabilities of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetCapabilitiesContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var capabilities = CloudProjectFunctions.getCapabilitiesContainerRegistry(GetCapabilitiesContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetCapabilitiesContainerRegistryInvokeResult> getCapabilitiesContainerRegistryPlain(GetCapabilitiesContainerRegistryPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getCapabilitiesContainerRegistry:getCapabilitiesContainerRegistry", TypeShape.of(GetCapabilitiesContainerRegistryInvokeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the container registries of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistriesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registries = CloudProjectFunctions.getContainerRegistries(GetContainerRegistriesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetContainerRegistriesInvokeResult> getContainerRegistries(GetContainerRegistriesArgs args) {
        return getContainerRegistries(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the container registries of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistriesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registries = CloudProjectFunctions.getContainerRegistries(GetContainerRegistriesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetContainerRegistriesInvokeResult> getContainerRegistriesPlain(GetContainerRegistriesPlainArgs args) {
        return getContainerRegistriesPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the container registries of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistriesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registries = CloudProjectFunctions.getContainerRegistries(GetContainerRegistriesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetContainerRegistriesInvokeResult> getContainerRegistries(GetContainerRegistriesArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getContainerRegistries:getContainerRegistries", TypeShape.of(GetContainerRegistriesInvokeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the container registries of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistriesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registries = CloudProjectFunctions.getContainerRegistries(GetContainerRegistriesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetContainerRegistriesInvokeResult> getContainerRegistriesPlain(GetContainerRegistriesPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getContainerRegistries:getContainerRegistries", TypeShape.of(GetContainerRegistriesInvokeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .registryId(&#34;yyyy&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetContainerRegistryResult> getContainerRegistry(GetContainerRegistryArgs args) {
        return getContainerRegistry(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .registryId(&#34;yyyy&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetContainerRegistryResult> getContainerRegistryPlain(GetContainerRegistryPlainArgs args) {
        return getContainerRegistryPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .registryId(&#34;yyyy&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetContainerRegistryResult> getContainerRegistry(GetContainerRegistryArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getContainerRegistry:getContainerRegistry", TypeShape.of(GetContainerRegistryResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .registryId(&#34;yyyy&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetContainerRegistryResult> getContainerRegistryPlain(GetContainerRegistryPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getContainerRegistry:getContainerRegistry", TypeShape.of(GetContainerRegistryResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the list of users of a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryUsersArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .registryId(&#34;yyyy&#34;)
     *             .build());
     * 
     *         final var users = CloudProjectFunctions.getContainerRegistryUsers(GetContainerRegistryUsersArgs.builder()
     *             .serviceName(ovh_cloud_project_containerregistry.registry().service_name())
     *             .registryId(ovh_cloud_project_containerregistry.registry().id())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetContainerRegistryUsersInvokeResult> getContainerRegistryUsers(GetContainerRegistryUsersArgs args) {
        return getContainerRegistryUsers(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the list of users of a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryUsersArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .registryId(&#34;yyyy&#34;)
     *             .build());
     * 
     *         final var users = CloudProjectFunctions.getContainerRegistryUsers(GetContainerRegistryUsersArgs.builder()
     *             .serviceName(ovh_cloud_project_containerregistry.registry().service_name())
     *             .registryId(ovh_cloud_project_containerregistry.registry().id())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetContainerRegistryUsersInvokeResult> getContainerRegistryUsersPlain(GetContainerRegistryUsersPlainArgs args) {
        return getContainerRegistryUsersPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the list of users of a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryUsersArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .registryId(&#34;yyyy&#34;)
     *             .build());
     * 
     *         final var users = CloudProjectFunctions.getContainerRegistryUsers(GetContainerRegistryUsersArgs.builder()
     *             .serviceName(ovh_cloud_project_containerregistry.registry().service_name())
     *             .registryId(ovh_cloud_project_containerregistry.registry().id())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetContainerRegistryUsersInvokeResult> getContainerRegistryUsers(GetContainerRegistryUsersArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers", TypeShape.of(GetContainerRegistryUsersInvokeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the list of users of a container registry associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryArgs;
     * import com.pulumi.ovh.CloudProject.inputs.GetContainerRegistryUsersArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var registry = CloudProjectFunctions.getContainerRegistry(GetContainerRegistryArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .registryId(&#34;yyyy&#34;)
     *             .build());
     * 
     *         final var users = CloudProjectFunctions.getContainerRegistryUsers(GetContainerRegistryUsersArgs.builder()
     *             .serviceName(ovh_cloud_project_containerregistry.registry().service_name())
     *             .registryId(ovh_cloud_project_containerregistry.registry().id())
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetContainerRegistryUsersInvokeResult> getContainerRegistryUsersPlain(GetContainerRegistryUsersPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getContainerRegistryUsers:getContainerRegistryUsers", TypeShape.of(GetContainerRegistryUsersInvokeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the details of a failover IP address of a service in a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetFailoverIpAttachArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myfailoverip = CloudProjectFunctions.getFailoverIpAttach(GetFailoverIpAttachArgs.builder()
     *             .ip(&#34;XXXXXX&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetFailoverIpAttachResult> getFailoverIpAttach(GetFailoverIpAttachArgs args) {
        return getFailoverIpAttach(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the details of a failover IP address of a service in a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetFailoverIpAttachArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myfailoverip = CloudProjectFunctions.getFailoverIpAttach(GetFailoverIpAttachArgs.builder()
     *             .ip(&#34;XXXXXX&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetFailoverIpAttachResult> getFailoverIpAttachPlain(GetFailoverIpAttachPlainArgs args) {
        return getFailoverIpAttachPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the details of a failover IP address of a service in a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetFailoverIpAttachArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myfailoverip = CloudProjectFunctions.getFailoverIpAttach(GetFailoverIpAttachArgs.builder()
     *             .ip(&#34;XXXXXX&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetFailoverIpAttachResult> getFailoverIpAttach(GetFailoverIpAttachArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach", TypeShape.of(GetFailoverIpAttachResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the details of a failover IP address of a service in a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetFailoverIpAttachArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myfailoverip = CloudProjectFunctions.getFailoverIpAttach(GetFailoverIpAttachArgs.builder()
     *             .ip(&#34;XXXXXX&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetFailoverIpAttachResult> getFailoverIpAttachPlain(GetFailoverIpAttachPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getFailoverIpAttach:getFailoverIpAttach", TypeShape.of(GetFailoverIpAttachResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myKubeCluster = CloudProjectFunctions.getKube(GetKubeArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;version&#34;, myKubeCluster.applyValue(getKubeResult -&gt; getKubeResult.version()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeResult> getKube(GetKubeArgs args) {
        return getKube(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myKubeCluster = CloudProjectFunctions.getKube(GetKubeArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;version&#34;, myKubeCluster.applyValue(getKubeResult -&gt; getKubeResult.version()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeResult> getKubePlain(GetKubePlainArgs args) {
        return getKubePlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myKubeCluster = CloudProjectFunctions.getKube(GetKubeArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;version&#34;, myKubeCluster.applyValue(getKubeResult -&gt; getKubeResult.version()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeResult> getKube(GetKubeArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getKube:getKube", TypeShape.of(GetKubeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myKubeCluster = CloudProjectFunctions.getKube(GetKubeArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;version&#34;, myKubeCluster.applyValue(getKubeResult -&gt; getKubeResult.version()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeResult> getKubePlain(GetKubePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getKube:getKube", TypeShape.of(GetKubeResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster IP restrictions.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeIpRestrictionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var iprestrictions = CloudProjectFunctions.getKubeIpRestrictions(GetKubeIpRestrictionsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;ips&#34;, iprestrictions.applyValue(getKubeIpRestrictionsResult -&gt; getKubeIpRestrictionsResult.ips()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeIpRestrictionsResult> getKubeIpRestrictions(GetKubeIpRestrictionsArgs args) {
        return getKubeIpRestrictions(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster IP restrictions.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeIpRestrictionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var iprestrictions = CloudProjectFunctions.getKubeIpRestrictions(GetKubeIpRestrictionsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;ips&#34;, iprestrictions.applyValue(getKubeIpRestrictionsResult -&gt; getKubeIpRestrictionsResult.ips()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeIpRestrictionsResult> getKubeIpRestrictionsPlain(GetKubeIpRestrictionsPlainArgs args) {
        return getKubeIpRestrictionsPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster IP restrictions.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeIpRestrictionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var iprestrictions = CloudProjectFunctions.getKubeIpRestrictions(GetKubeIpRestrictionsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;ips&#34;, iprestrictions.applyValue(getKubeIpRestrictionsResult -&gt; getKubeIpRestrictionsResult.ips()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeIpRestrictionsResult> getKubeIpRestrictions(GetKubeIpRestrictionsArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions", TypeShape.of(GetKubeIpRestrictionsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster IP restrictions.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeIpRestrictionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var iprestrictions = CloudProjectFunctions.getKubeIpRestrictions(GetKubeIpRestrictionsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;ips&#34;, iprestrictions.applyValue(getKubeIpRestrictionsResult -&gt; getKubeIpRestrictionsResult.ips()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeIpRestrictionsResult> getKubeIpRestrictionsPlain(GetKubeIpRestrictionsPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getKubeIpRestrictions:getKubeIpRestrictions", TypeShape.of(GetKubeIpRestrictionsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodepool = CloudProjectFunctions.getKubeNodePool(GetKubeNodePoolArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;xxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;maxNodes&#34;, nodepool.applyValue(getKubeNodePoolResult -&gt; getKubeNodePoolResult.maxNodes()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeNodePoolResult> getKubeNodePool(GetKubeNodePoolArgs args) {
        return getKubeNodePool(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodepool = CloudProjectFunctions.getKubeNodePool(GetKubeNodePoolArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;xxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;maxNodes&#34;, nodepool.applyValue(getKubeNodePoolResult -&gt; getKubeNodePoolResult.maxNodes()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeNodePoolResult> getKubeNodePoolPlain(GetKubeNodePoolPlainArgs args) {
        return getKubeNodePoolPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodepool = CloudProjectFunctions.getKubeNodePool(GetKubeNodePoolArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;xxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;maxNodes&#34;, nodepool.applyValue(getKubeNodePoolResult -&gt; getKubeNodePoolResult.maxNodes()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeNodePoolResult> getKubeNodePool(GetKubeNodePoolArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getKubeNodePool:getKubeNodePool", TypeShape.of(GetKubeNodePoolResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodepool = CloudProjectFunctions.getKubeNodePool(GetKubeNodePoolArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;xxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;maxNodes&#34;, nodepool.applyValue(getKubeNodePoolResult -&gt; getKubeNodePoolResult.maxNodes()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeNodePoolResult> getKubeNodePoolPlain(GetKubeNodePoolPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getKubeNodePool:getKubeNodePool", TypeShape.of(GetKubeNodePoolResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes in a specific node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodePoolNodes = CloudProjectFunctions.getKubeNodePoolNodes(GetKubeNodePoolNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodePoolNodes.applyValue(getKubeNodePoolNodesResult -&gt; getKubeNodePoolNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeNodePoolNodesResult> getKubeNodePoolNodes(GetKubeNodePoolNodesArgs args) {
        return getKubeNodePoolNodes(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes in a specific node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodePoolNodes = CloudProjectFunctions.getKubeNodePoolNodes(GetKubeNodePoolNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodePoolNodes.applyValue(getKubeNodePoolNodesResult -&gt; getKubeNodePoolNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeNodePoolNodesResult> getKubeNodePoolNodesPlain(GetKubeNodePoolNodesPlainArgs args) {
        return getKubeNodePoolNodesPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes in a specific node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodePoolNodes = CloudProjectFunctions.getKubeNodePoolNodes(GetKubeNodePoolNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodePoolNodes.applyValue(getKubeNodePoolNodesResult -&gt; getKubeNodePoolNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeNodePoolNodesResult> getKubeNodePoolNodes(GetKubeNodePoolNodesArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes", TypeShape.of(GetKubeNodePoolNodesResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes in a specific node pool.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodePoolNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodePoolNodes = CloudProjectFunctions.getKubeNodePoolNodes(GetKubeNodePoolNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .name(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodePoolNodes.applyValue(getKubeNodePoolNodesResult -&gt; getKubeNodePoolNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeNodePoolNodesResult> getKubeNodePoolNodesPlain(GetKubeNodePoolNodesPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getKubeNodePoolNodes:getKubeNodePoolNodes", TypeShape.of(GetKubeNodePoolNodesResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodes = CloudProjectFunctions.getKubeNodes(GetKubeNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodes.applyValue(getKubeNodesResult -&gt; getKubeNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeNodesResult> getKubeNodes(GetKubeNodesArgs args) {
        return getKubeNodes(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodes = CloudProjectFunctions.getKubeNodes(GetKubeNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodes.applyValue(getKubeNodesResult -&gt; getKubeNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeNodesResult> getKubeNodesPlain(GetKubeNodesPlainArgs args) {
        return getKubeNodesPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodes = CloudProjectFunctions.getKubeNodes(GetKubeNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodes.applyValue(getKubeNodesResult -&gt; getKubeNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeNodesResult> getKubeNodes(GetKubeNodesArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getKubeNodes:getKubeNodes", TypeShape.of(GetKubeNodesResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a list of OVHcloud Managed Kubernetes nodes.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeNodesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var nodesKubeNodes = CloudProjectFunctions.getKubeNodes(GetKubeNodesArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;nodes&#34;, nodesKubeNodes.applyValue(getKubeNodesResult -&gt; getKubeNodesResult));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeNodesResult> getKubeNodesPlain(GetKubeNodesPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getKubeNodes:getKubeNodes", TypeShape.of(GetKubeNodesResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster OIDC.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeOidcArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var oidc = CloudProjectFunctions.getKubeOidc(GetKubeOidcArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;oidc-val&#34;, oidc.applyValue(getKubeOidcResult -&gt; getKubeOidcResult.clientId()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeOidcResult> getKubeOidc(GetKubeOidcArgs args) {
        return getKubeOidc(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster OIDC.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeOidcArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var oidc = CloudProjectFunctions.getKubeOidc(GetKubeOidcArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;oidc-val&#34;, oidc.applyValue(getKubeOidcResult -&gt; getKubeOidcResult.clientId()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeOidcResult> getKubeOidcPlain(GetKubeOidcPlainArgs args) {
        return getKubeOidcPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster OIDC.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeOidcArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var oidc = CloudProjectFunctions.getKubeOidc(GetKubeOidcArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;oidc-val&#34;, oidc.applyValue(getKubeOidcResult -&gt; getKubeOidcResult.clientId()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetKubeOidcResult> getKubeOidc(GetKubeOidcArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getKubeOidc:getKubeOidc", TypeShape.of(GetKubeOidcResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get a OVHcloud Managed Kubernetes Service cluster OIDC.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetKubeOidcArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var oidc = CloudProjectFunctions.getKubeOidc(GetKubeOidcArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .kubeId(&#34;xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;oidc-val&#34;, oidc.applyValue(getKubeOidcResult -&gt; getKubeOidcResult.clientId()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetKubeOidcResult> getKubeOidcPlain(GetKubeOidcPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getKubeOidc:getKubeOidc", TypeShape.of(GetKubeOidcResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a namespace of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespaceArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbnamespace = CloudProjectFunctions.getM3dbNamespace(GetM3dbNamespaceArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbnamespaceType&#34;, m3dbnamespace.applyValue(getM3dbNamespaceResult -&gt; getM3dbNamespaceResult.type()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetM3dbNamespaceResult> getM3dbNamespace(GetM3dbNamespaceArgs args) {
        return getM3dbNamespace(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a namespace of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespaceArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbnamespace = CloudProjectFunctions.getM3dbNamespace(GetM3dbNamespaceArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbnamespaceType&#34;, m3dbnamespace.applyValue(getM3dbNamespaceResult -&gt; getM3dbNamespaceResult.type()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetM3dbNamespaceResult> getM3dbNamespacePlain(GetM3dbNamespacePlainArgs args) {
        return getM3dbNamespacePlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a namespace of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespaceArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbnamespace = CloudProjectFunctions.getM3dbNamespace(GetM3dbNamespaceArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbnamespaceType&#34;, m3dbnamespace.applyValue(getM3dbNamespaceResult -&gt; getM3dbNamespaceResult.type()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetM3dbNamespaceResult> getM3dbNamespace(GetM3dbNamespaceArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getM3dbNamespace:getM3dbNamespace", TypeShape.of(GetM3dbNamespaceResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a namespace of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespaceArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbnamespace = CloudProjectFunctions.getM3dbNamespace(GetM3dbNamespaceArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbnamespaceType&#34;, m3dbnamespace.applyValue(getM3dbNamespaceResult -&gt; getM3dbNamespaceResult.type()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetM3dbNamespaceResult> getM3dbNamespacePlain(GetM3dbNamespacePlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getM3dbNamespace:getM3dbNamespace", TypeShape.of(GetM3dbNamespaceResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the list of namespaces of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var namespaces = CloudProjectFunctions.getM3dbNamespaces(GetM3dbNamespacesArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;namespaceIds&#34;, namespaces.applyValue(getM3dbNamespacesResult -&gt; getM3dbNamespacesResult.namespaceIds()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetM3dbNamespacesResult> getM3dbNamespaces(GetM3dbNamespacesArgs args) {
        return getM3dbNamespaces(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the list of namespaces of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var namespaces = CloudProjectFunctions.getM3dbNamespaces(GetM3dbNamespacesArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;namespaceIds&#34;, namespaces.applyValue(getM3dbNamespacesResult -&gt; getM3dbNamespacesResult.namespaceIds()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetM3dbNamespacesResult> getM3dbNamespacesPlain(GetM3dbNamespacesPlainArgs args) {
        return getM3dbNamespacesPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the list of namespaces of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var namespaces = CloudProjectFunctions.getM3dbNamespaces(GetM3dbNamespacesArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;namespaceIds&#34;, namespaces.applyValue(getM3dbNamespacesResult -&gt; getM3dbNamespacesResult.namespaceIds()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetM3dbNamespacesResult> getM3dbNamespaces(GetM3dbNamespacesArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces", TypeShape.of(GetM3dbNamespacesResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the list of namespaces of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbNamespacesArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var namespaces = CloudProjectFunctions.getM3dbNamespaces(GetM3dbNamespacesArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;namespaceIds&#34;, namespaces.applyValue(getM3dbNamespacesResult -&gt; getM3dbNamespacesResult.namespaceIds()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetM3dbNamespacesResult> getM3dbNamespacesPlain(GetM3dbNamespacesPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getM3dbNamespaces:getM3dbNamespaces", TypeShape.of(GetM3dbNamespacesResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbuser = CloudProjectFunctions.getM3dbUser(GetM3dbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbuserGroup&#34;, m3dbuser.applyValue(getM3dbUserResult -&gt; getM3dbUserResult.group()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetM3dbUserResult> getM3dbUser(GetM3dbUserArgs args) {
        return getM3dbUser(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbuser = CloudProjectFunctions.getM3dbUser(GetM3dbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbuserGroup&#34;, m3dbuser.applyValue(getM3dbUserResult -&gt; getM3dbUserResult.group()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetM3dbUserResult> getM3dbUserPlain(GetM3dbUserPlainArgs args) {
        return getM3dbUserPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbuser = CloudProjectFunctions.getM3dbUser(GetM3dbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbuserGroup&#34;, m3dbuser.applyValue(getM3dbUserResult -&gt; getM3dbUserResult.group()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetM3dbUserResult> getM3dbUser(GetM3dbUserArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getM3dbUser:getM3dbUser", TypeShape.of(GetM3dbUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a M3DB cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetM3dbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var m3dbuser = CloudProjectFunctions.getM3dbUser(GetM3dbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;m3dbuserGroup&#34;, m3dbuser.applyValue(getM3dbUserResult -&gt; getM3dbUserResult.group()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetM3dbUserResult> getM3dbUserPlain(GetM3dbUserPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getM3dbUser:getM3dbUser", TypeShape.of(GetM3dbUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a mongodb cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var mongouser = CloudProjectFunctions.getMongoDbUser(GetMongoDbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ@admin&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;mongouserRoles&#34;, mongouser.applyValue(getMongoDbUserResult -&gt; getMongoDbUserResult.roles()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetMongoDbUserResult> getMongoDbUser(GetMongoDbUserArgs args) {
        return getMongoDbUser(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a mongodb cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var mongouser = CloudProjectFunctions.getMongoDbUser(GetMongoDbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ@admin&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;mongouserRoles&#34;, mongouser.applyValue(getMongoDbUserResult -&gt; getMongoDbUserResult.roles()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetMongoDbUserResult> getMongoDbUserPlain(GetMongoDbUserPlainArgs args) {
        return getMongoDbUserPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a mongodb cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var mongouser = CloudProjectFunctions.getMongoDbUser(GetMongoDbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ@admin&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;mongouserRoles&#34;, mongouser.applyValue(getMongoDbUserResult -&gt; getMongoDbUserResult.roles()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetMongoDbUserResult> getMongoDbUser(GetMongoDbUserArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getMongoDbUser:getMongoDbUser", TypeShape.of(GetMongoDbUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a mongodb cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetMongoDbUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var mongouser = CloudProjectFunctions.getMongoDbUser(GetMongoDbUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ@admin&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;mongouserRoles&#34;, mongouser.applyValue(getMongoDbUserResult -&gt; getMongoDbUserResult.roles()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetMongoDbUserResult> getMongoDbUserPlain(GetMongoDbUserPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getMongoDbUser:getMongoDbUser", TypeShape.of(GetMongoDbUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var pattern = CloudProjectFunctions.getOpenSearchPattern(GetOpenSearchPatternArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .id(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternPattern&#34;, pattern.applyValue(getOpenSearchPatternResult -&gt; getOpenSearchPatternResult.pattern()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetOpenSearchPatternResult> getOpenSearchPattern(GetOpenSearchPatternArgs args) {
        return getOpenSearchPattern(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var pattern = CloudProjectFunctions.getOpenSearchPattern(GetOpenSearchPatternArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .id(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternPattern&#34;, pattern.applyValue(getOpenSearchPatternResult -&gt; getOpenSearchPatternResult.pattern()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetOpenSearchPatternResult> getOpenSearchPatternPlain(GetOpenSearchPatternPlainArgs args) {
        return getOpenSearchPatternPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var pattern = CloudProjectFunctions.getOpenSearchPattern(GetOpenSearchPatternArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .id(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternPattern&#34;, pattern.applyValue(getOpenSearchPatternResult -&gt; getOpenSearchPatternResult.pattern()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetOpenSearchPatternResult> getOpenSearchPattern(GetOpenSearchPatternArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern", TypeShape.of(GetOpenSearchPatternResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var pattern = CloudProjectFunctions.getOpenSearchPattern(GetOpenSearchPatternArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .id(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternPattern&#34;, pattern.applyValue(getOpenSearchPatternResult -&gt; getOpenSearchPatternResult.pattern()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetOpenSearchPatternResult> getOpenSearchPatternPlain(GetOpenSearchPatternPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getOpenSearchPattern:getOpenSearchPattern", TypeShape.of(GetOpenSearchPatternResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the list of pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var patterns = CloudProjectFunctions.getOpenSearchPatterns(GetOpenSearchPatternsArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternIds&#34;, patterns.applyValue(getOpenSearchPatternsResult -&gt; getOpenSearchPatternsResult.patternIds()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetOpenSearchPatternsResult> getOpenSearchPatterns(GetOpenSearchPatternsArgs args) {
        return getOpenSearchPatterns(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the list of pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var patterns = CloudProjectFunctions.getOpenSearchPatterns(GetOpenSearchPatternsArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternIds&#34;, patterns.applyValue(getOpenSearchPatternsResult -&gt; getOpenSearchPatternsResult.patternIds()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetOpenSearchPatternsResult> getOpenSearchPatternsPlain(GetOpenSearchPatternsPlainArgs args) {
        return getOpenSearchPatternsPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the list of pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var patterns = CloudProjectFunctions.getOpenSearchPatterns(GetOpenSearchPatternsArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternIds&#34;, patterns.applyValue(getOpenSearchPatternsResult -&gt; getOpenSearchPatternsResult.patternIds()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetOpenSearchPatternsResult> getOpenSearchPatterns(GetOpenSearchPatternsArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns", TypeShape.of(GetOpenSearchPatternsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the list of pattern of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchPatternsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var patterns = CloudProjectFunctions.getOpenSearchPatterns(GetOpenSearchPatternsArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;patternIds&#34;, patterns.applyValue(getOpenSearchPatternsResult -&gt; getOpenSearchPatternsResult.patternIds()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetOpenSearchPatternsResult> getOpenSearchPatternsPlain(GetOpenSearchPatternsPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getOpenSearchPatterns:getOpenSearchPatterns", TypeShape.of(GetOpenSearchPatternsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var osuser = CloudProjectFunctions.getOpenSearchUser(GetOpenSearchUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;osuserAcls&#34;, osuser.applyValue(getOpenSearchUserResult -&gt; getOpenSearchUserResult.acls()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetOpenSearchUserResult> getOpenSearchUser(GetOpenSearchUserArgs args) {
        return getOpenSearchUser(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var osuser = CloudProjectFunctions.getOpenSearchUser(GetOpenSearchUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;osuserAcls&#34;, osuser.applyValue(getOpenSearchUserResult -&gt; getOpenSearchUserResult.acls()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetOpenSearchUserResult> getOpenSearchUserPlain(GetOpenSearchUserPlainArgs args) {
        return getOpenSearchUserPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var osuser = CloudProjectFunctions.getOpenSearchUser(GetOpenSearchUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;osuserAcls&#34;, osuser.applyValue(getOpenSearchUserResult -&gt; getOpenSearchUserResult.acls()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetOpenSearchUserResult> getOpenSearchUser(GetOpenSearchUserArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getOpenSearchUser:getOpenSearchUser", TypeShape.of(GetOpenSearchUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a opensearch cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetOpenSearchUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var osuser = CloudProjectFunctions.getOpenSearchUser(GetOpenSearchUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;osuserAcls&#34;, osuser.applyValue(getOpenSearchUserResult -&gt; getOpenSearchUserResult.acls()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetOpenSearchUserResult> getOpenSearchUserPlain(GetOpenSearchUserPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getOpenSearchUser:getOpenSearchUser", TypeShape.of(GetOpenSearchUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a redis cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRedisUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var redisuser = CloudProjectFunctions.getRedisUser(GetRedisUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;redisuserCommands&#34;, redisuser.applyValue(getRedisUserResult -&gt; getRedisUserResult.commands()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetRedisUserResult> getRedisUser(GetRedisUserArgs args) {
        return getRedisUser(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a redis cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRedisUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var redisuser = CloudProjectFunctions.getRedisUser(GetRedisUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;redisuserCommands&#34;, redisuser.applyValue(getRedisUserResult -&gt; getRedisUserResult.commands()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetRedisUserResult> getRedisUserPlain(GetRedisUserPlainArgs args) {
        return getRedisUserPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get information about a user of a redis cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRedisUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var redisuser = CloudProjectFunctions.getRedisUser(GetRedisUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;redisuserCommands&#34;, redisuser.applyValue(getRedisUserResult -&gt; getRedisUserResult.commands()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetRedisUserResult> getRedisUser(GetRedisUserArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getRedisUser:getRedisUser", TypeShape.of(GetRedisUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get information about a user of a redis cluster associated with a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRedisUserArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var redisuser = CloudProjectFunctions.getRedisUser(GetRedisUserArgs.builder()
     *             .serviceName(&#34;XXX&#34;)
     *             .clusterId(&#34;YYY&#34;)
     *             .name(&#34;ZZZ&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;redisuserCommands&#34;, redisuser.applyValue(getRedisUserResult -&gt; getRedisUserResult.commands()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetRedisUserResult> getRedisUserPlain(GetRedisUserPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getRedisUser:getRedisUser", TypeShape.of(GetRedisUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to retrieve information about a region associated with a public cloud project. The region must be associated with the project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var gRA1 = CloudProjectFunctions.getRegion(GetRegionArgs.builder()
     *             .name(&#34;GRA1&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetRegionResult> getRegion(GetRegionArgs args) {
        return getRegion(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to retrieve information about a region associated with a public cloud project. The region must be associated with the project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var gRA1 = CloudProjectFunctions.getRegion(GetRegionArgs.builder()
     *             .name(&#34;GRA1&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetRegionResult> getRegionPlain(GetRegionPlainArgs args) {
        return getRegionPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to retrieve information about a region associated with a public cloud project. The region must be associated with the project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var gRA1 = CloudProjectFunctions.getRegion(GetRegionArgs.builder()
     *             .name(&#34;GRA1&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetRegionResult> getRegion(GetRegionArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getRegion:getRegion", TypeShape.of(GetRegionResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to retrieve information about a region associated with a public cloud project. The region must be associated with the project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var gRA1 = CloudProjectFunctions.getRegion(GetRegionArgs.builder()
     *             .name(&#34;GRA1&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetRegionResult> getRegionPlain(GetRegionPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getRegion:getRegion", TypeShape.of(GetRegionResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the regions of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var regions = CloudProjectFunctions.getRegions(GetRegionsArgs.builder()
     *             .hasServicesUps(&#34;network&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetRegionsResult> getRegions(GetRegionsArgs args) {
        return getRegions(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the regions of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var regions = CloudProjectFunctions.getRegions(GetRegionsArgs.builder()
     *             .hasServicesUps(&#34;network&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetRegionsResult> getRegionsPlain(GetRegionsPlainArgs args) {
        return getRegionsPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to get the regions of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var regions = CloudProjectFunctions.getRegions(GetRegionsArgs.builder()
     *             .hasServicesUps(&#34;network&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetRegionsResult> getRegions(GetRegionsArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getRegions:getRegions", TypeShape.of(GetRegionsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to get the regions of a public cloud project.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetRegionsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var regions = CloudProjectFunctions.getRegions(GetRegionsArgs.builder()
     *             .hasServicesUps(&#34;network&#34;)
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .build());
     * 
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetRegionsResult> getRegionsPlain(GetRegionsPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getRegions:getRegions", TypeShape.of(GetRegionsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get the user details of a previously created public cloud project user.
     * 
     */
    public static Output<GetUserResult> getUser(GetUserArgs args) {
        return getUser(args, InvokeOptions.Empty);
    }
    /**
     * Get the user details of a previously created public cloud project user.
     * 
     */
    public static CompletableFuture<GetUserResult> getUserPlain(GetUserPlainArgs args) {
        return getUserPlain(args, InvokeOptions.Empty);
    }
    /**
     * Get the user details of a previously created public cloud project user.
     * 
     */
    public static Output<GetUserResult> getUser(GetUserArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getUser:getUser", TypeShape.of(GetUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get the user details of a previously created public cloud project user.
     * 
     */
    public static CompletableFuture<GetUserResult> getUserPlain(GetUserPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getUser:getUser", TypeShape.of(GetUserResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to retrieve the Secret Access Key of an Access Key ID associated with a public cloud project&#39;s user.
     * 
     */
    public static Output<GetUserS3CredentialResult> getUserS3Credential(GetUserS3CredentialArgs args) {
        return getUserS3Credential(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to retrieve the Secret Access Key of an Access Key ID associated with a public cloud project&#39;s user.
     * 
     */
    public static CompletableFuture<GetUserS3CredentialResult> getUserS3CredentialPlain(GetUserS3CredentialPlainArgs args) {
        return getUserS3CredentialPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to retrieve the Secret Access Key of an Access Key ID associated with a public cloud project&#39;s user.
     * 
     */
    public static Output<GetUserS3CredentialResult> getUserS3Credential(GetUserS3CredentialArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getUserS3Credential:getUserS3Credential", TypeShape.of(GetUserS3CredentialResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to retrieve the Secret Access Key of an Access Key ID associated with a public cloud project&#39;s user.
     * 
     */
    public static CompletableFuture<GetUserS3CredentialResult> getUserS3CredentialPlain(GetUserS3CredentialPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getUserS3Credential:getUserS3Credential", TypeShape.of(GetUserS3CredentialResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to retrieve the list of all the S3 access_key_id associated with a public cloud project&#39;s user.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myS3Credentials = CloudProjectFunctions.getUserS3Credentials(GetUserS3CredentialsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .userId(&#34;1234&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;accessKeyIds&#34;, myS3Credentials.applyValue(getUserS3CredentialsResult -&gt; getUserS3CredentialsResult.accessKeyIds()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetUserS3CredentialsResult> getUserS3Credentials(GetUserS3CredentialsArgs args) {
        return getUserS3Credentials(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to retrieve the list of all the S3 access_key_id associated with a public cloud project&#39;s user.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myS3Credentials = CloudProjectFunctions.getUserS3Credentials(GetUserS3CredentialsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .userId(&#34;1234&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;accessKeyIds&#34;, myS3Credentials.applyValue(getUserS3CredentialsResult -&gt; getUserS3CredentialsResult.accessKeyIds()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetUserS3CredentialsResult> getUserS3CredentialsPlain(GetUserS3CredentialsPlainArgs args) {
        return getUserS3CredentialsPlain(args, InvokeOptions.Empty);
    }
    /**
     * Use this data source to retrieve the list of all the S3 access_key_id associated with a public cloud project&#39;s user.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myS3Credentials = CloudProjectFunctions.getUserS3Credentials(GetUserS3CredentialsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .userId(&#34;1234&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;accessKeyIds&#34;, myS3Credentials.applyValue(getUserS3CredentialsResult -&gt; getUserS3CredentialsResult.accessKeyIds()));
     *     }
     * }
     * ```
     * 
     */
    public static Output<GetUserS3CredentialsResult> getUserS3Credentials(GetUserS3CredentialsArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getUserS3Credentials:getUserS3Credentials", TypeShape.of(GetUserS3CredentialsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Use this data source to retrieve the list of all the S3 access_key_id associated with a public cloud project&#39;s user.
     * 
     * ## Example Usage
     * ```java
     * package generated_program;
     * 
     * import com.pulumi.Context;
     * import com.pulumi.Pulumi;
     * import com.pulumi.core.Output;
     * import com.pulumi.ovh.CloudProject.CloudProjectFunctions;
     * import com.pulumi.ovh.CloudProject.inputs.GetUserS3CredentialsArgs;
     * import java.util.List;
     * import java.util.ArrayList;
     * import java.util.Map;
     * import java.io.File;
     * import java.nio.file.Files;
     * import java.nio.file.Paths;
     * 
     * public class App {
     *     public static void main(String[] args) {
     *         Pulumi.run(App::stack);
     *     }
     * 
     *     public static void stack(Context ctx) {
     *         final var myS3Credentials = CloudProjectFunctions.getUserS3Credentials(GetUserS3CredentialsArgs.builder()
     *             .serviceName(&#34;XXXXXX&#34;)
     *             .userId(&#34;1234&#34;)
     *             .build());
     * 
     *         ctx.export(&#34;accessKeyIds&#34;, myS3Credentials.applyValue(getUserS3CredentialsResult -&gt; getUserS3CredentialsResult.accessKeyIds()));
     *     }
     * }
     * ```
     * 
     */
    public static CompletableFuture<GetUserS3CredentialsResult> getUserS3CredentialsPlain(GetUserS3CredentialsPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getUserS3Credentials:getUserS3Credentials", TypeShape.of(GetUserS3CredentialsResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get the S3 Policy of a public cloud project user. The policy can be set by using the `ovh.CloudProject.S3Policy` resource.
     * 
     */
    public static Output<GetUserS3PolicyResult> getUserS3Policy(GetUserS3PolicyArgs args) {
        return getUserS3Policy(args, InvokeOptions.Empty);
    }
    /**
     * Get the S3 Policy of a public cloud project user. The policy can be set by using the `ovh.CloudProject.S3Policy` resource.
     * 
     */
    public static CompletableFuture<GetUserS3PolicyResult> getUserS3PolicyPlain(GetUserS3PolicyPlainArgs args) {
        return getUserS3PolicyPlain(args, InvokeOptions.Empty);
    }
    /**
     * Get the S3 Policy of a public cloud project user. The policy can be set by using the `ovh.CloudProject.S3Policy` resource.
     * 
     */
    public static Output<GetUserS3PolicyResult> getUserS3Policy(GetUserS3PolicyArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getUserS3Policy:getUserS3Policy", TypeShape.of(GetUserS3PolicyResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get the S3 Policy of a public cloud project user. The policy can be set by using the `ovh.CloudProject.S3Policy` resource.
     * 
     */
    public static CompletableFuture<GetUserS3PolicyResult> getUserS3PolicyPlain(GetUserS3PolicyPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getUserS3Policy:getUserS3Policy", TypeShape.of(GetUserS3PolicyResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get the list of all users of a public cloud project.
     * 
     */
    public static Output<GetUsersResult> getUsers(GetUsersArgs args) {
        return getUsers(args, InvokeOptions.Empty);
    }
    /**
     * Get the list of all users of a public cloud project.
     * 
     */
    public static CompletableFuture<GetUsersResult> getUsersPlain(GetUsersPlainArgs args) {
        return getUsersPlain(args, InvokeOptions.Empty);
    }
    /**
     * Get the list of all users of a public cloud project.
     * 
     */
    public static Output<GetUsersResult> getUsers(GetUsersArgs args, InvokeOptions options) {
        return Deployment.getInstance().invoke("ovh:CloudProject/getUsers:getUsers", TypeShape.of(GetUsersResult.class), args, Utilities.withVersion(options));
    }
    /**
     * Get the list of all users of a public cloud project.
     * 
     */
    public static CompletableFuture<GetUsersResult> getUsersPlain(GetUsersPlainArgs args, InvokeOptions options) {
        return Deployment.getInstance().invokeAsync("ovh:CloudProject/getUsers:getUsers", TypeShape.of(GetUsersResult.class), args, Utilities.withVersion(options));
    }
}
