"""
Type annotations for batch service Client.

[Documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/)

Copyright 2025 Vlad Emelianov

Usage::

    ```python
    from boto3.session import Session
    from types_boto3_batch.client import BatchClient

    session = Session()
    client: BatchClient = session.client("batch")
    ```
"""

from __future__ import annotations

import sys
from collections.abc import Mapping
from typing import Any, overload

from botocore.client import BaseClient, ClientMeta
from botocore.errorfactory import BaseClientExceptions
from botocore.exceptions import ClientError as BotocoreClientError

from .paginator import (
    DescribeComputeEnvironmentsPaginator,
    DescribeJobDefinitionsPaginator,
    DescribeJobQueuesPaginator,
    DescribeServiceEnvironmentsPaginator,
    ListConsumableResourcesPaginator,
    ListJobsByConsumableResourcePaginator,
    ListJobsPaginator,
    ListSchedulingPoliciesPaginator,
    ListServiceJobsPaginator,
)
from .type_defs import (
    CancelJobRequestTypeDef,
    CreateComputeEnvironmentRequestTypeDef,
    CreateComputeEnvironmentResponseTypeDef,
    CreateConsumableResourceRequestTypeDef,
    CreateConsumableResourceResponseTypeDef,
    CreateJobQueueRequestTypeDef,
    CreateJobQueueResponseTypeDef,
    CreateSchedulingPolicyRequestTypeDef,
    CreateSchedulingPolicyResponseTypeDef,
    CreateServiceEnvironmentRequestTypeDef,
    CreateServiceEnvironmentResponseTypeDef,
    DeleteComputeEnvironmentRequestTypeDef,
    DeleteConsumableResourceRequestTypeDef,
    DeleteJobQueueRequestTypeDef,
    DeleteSchedulingPolicyRequestTypeDef,
    DeleteServiceEnvironmentRequestTypeDef,
    DeregisterJobDefinitionRequestTypeDef,
    DescribeComputeEnvironmentsRequestTypeDef,
    DescribeComputeEnvironmentsResponseTypeDef,
    DescribeConsumableResourceRequestTypeDef,
    DescribeConsumableResourceResponseTypeDef,
    DescribeJobDefinitionsRequestTypeDef,
    DescribeJobDefinitionsResponseTypeDef,
    DescribeJobQueuesRequestTypeDef,
    DescribeJobQueuesResponseTypeDef,
    DescribeJobsRequestTypeDef,
    DescribeJobsResponseTypeDef,
    DescribeSchedulingPoliciesRequestTypeDef,
    DescribeSchedulingPoliciesResponseTypeDef,
    DescribeServiceEnvironmentsRequestTypeDef,
    DescribeServiceEnvironmentsResponseTypeDef,
    DescribeServiceJobRequestTypeDef,
    DescribeServiceJobResponseTypeDef,
    GetJobQueueSnapshotRequestTypeDef,
    GetJobQueueSnapshotResponseTypeDef,
    ListConsumableResourcesRequestTypeDef,
    ListConsumableResourcesResponseTypeDef,
    ListJobsByConsumableResourceRequestTypeDef,
    ListJobsByConsumableResourceResponseTypeDef,
    ListJobsRequestTypeDef,
    ListJobsResponseTypeDef,
    ListSchedulingPoliciesRequestTypeDef,
    ListSchedulingPoliciesResponseTypeDef,
    ListServiceJobsRequestTypeDef,
    ListServiceJobsResponseTypeDef,
    ListTagsForResourceRequestTypeDef,
    ListTagsForResourceResponseTypeDef,
    RegisterJobDefinitionRequestTypeDef,
    RegisterJobDefinitionResponseTypeDef,
    SubmitJobRequestTypeDef,
    SubmitJobResponseTypeDef,
    SubmitServiceJobRequestTypeDef,
    SubmitServiceJobResponseTypeDef,
    TagResourceRequestTypeDef,
    TerminateJobRequestTypeDef,
    TerminateServiceJobRequestTypeDef,
    UntagResourceRequestTypeDef,
    UpdateComputeEnvironmentRequestTypeDef,
    UpdateComputeEnvironmentResponseTypeDef,
    UpdateConsumableResourceRequestTypeDef,
    UpdateConsumableResourceResponseTypeDef,
    UpdateJobQueueRequestTypeDef,
    UpdateJobQueueResponseTypeDef,
    UpdateSchedulingPolicyRequestTypeDef,
    UpdateServiceEnvironmentRequestTypeDef,
    UpdateServiceEnvironmentResponseTypeDef,
)

if sys.version_info >= (3, 12):
    from typing import Literal, Unpack
else:
    from typing_extensions import Literal, Unpack


__all__ = ("BatchClient",)


class Exceptions(BaseClientExceptions):
    ClientError: type[BotocoreClientError]
    ClientException: type[BotocoreClientError]
    ServerException: type[BotocoreClientError]


class BatchClient(BaseClient):
    """
    [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch.html#Batch.Client)
    [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/)
    """

    meta: ClientMeta

    @property
    def exceptions(self) -> Exceptions:
        """
        BatchClient exceptions.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch.html#Batch.Client)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#exceptions)
        """

    def can_paginate(self, operation_name: str) -> bool:
        """
        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/can_paginate.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#can_paginate)
        """

    def generate_presigned_url(
        self,
        ClientMethod: str,
        Params: Mapping[str, Any] = ...,
        ExpiresIn: int = 3600,
        HttpMethod: str = ...,
    ) -> str:
        """
        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/generate_presigned_url.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#generate_presigned_url)
        """

    def cancel_job(self, **kwargs: Unpack[CancelJobRequestTypeDef]) -> dict[str, Any]:
        """
        Cancels a job in an Batch job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/cancel_job.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#cancel_job)
        """

    def create_compute_environment(
        self, **kwargs: Unpack[CreateComputeEnvironmentRequestTypeDef]
    ) -> CreateComputeEnvironmentResponseTypeDef:
        """
        Creates an Batch compute environment.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/create_compute_environment.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#create_compute_environment)
        """

    def create_consumable_resource(
        self, **kwargs: Unpack[CreateConsumableResourceRequestTypeDef]
    ) -> CreateConsumableResourceResponseTypeDef:
        """
        Creates an Batch consumable resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/create_consumable_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#create_consumable_resource)
        """

    def create_job_queue(
        self, **kwargs: Unpack[CreateJobQueueRequestTypeDef]
    ) -> CreateJobQueueResponseTypeDef:
        """
        Creates an Batch job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/create_job_queue.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#create_job_queue)
        """

    def create_scheduling_policy(
        self, **kwargs: Unpack[CreateSchedulingPolicyRequestTypeDef]
    ) -> CreateSchedulingPolicyResponseTypeDef:
        """
        Creates an Batch scheduling policy.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/create_scheduling_policy.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#create_scheduling_policy)
        """

    def create_service_environment(
        self, **kwargs: Unpack[CreateServiceEnvironmentRequestTypeDef]
    ) -> CreateServiceEnvironmentResponseTypeDef:
        """
        Creates a service environment for running service jobs.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/create_service_environment.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#create_service_environment)
        """

    def delete_compute_environment(
        self, **kwargs: Unpack[DeleteComputeEnvironmentRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Deletes an Batch compute environment.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/delete_compute_environment.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#delete_compute_environment)
        """

    def delete_consumable_resource(
        self, **kwargs: Unpack[DeleteConsumableResourceRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Deletes the specified consumable resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/delete_consumable_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#delete_consumable_resource)
        """

    def delete_job_queue(self, **kwargs: Unpack[DeleteJobQueueRequestTypeDef]) -> dict[str, Any]:
        """
        Deletes the specified job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/delete_job_queue.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#delete_job_queue)
        """

    def delete_scheduling_policy(
        self, **kwargs: Unpack[DeleteSchedulingPolicyRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Deletes the specified scheduling policy.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/delete_scheduling_policy.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#delete_scheduling_policy)
        """

    def delete_service_environment(
        self, **kwargs: Unpack[DeleteServiceEnvironmentRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Deletes a Service environment.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/delete_service_environment.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#delete_service_environment)
        """

    def deregister_job_definition(
        self, **kwargs: Unpack[DeregisterJobDefinitionRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Deregisters an Batch job definition.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/deregister_job_definition.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#deregister_job_definition)
        """

    def describe_compute_environments(
        self, **kwargs: Unpack[DescribeComputeEnvironmentsRequestTypeDef]
    ) -> DescribeComputeEnvironmentsResponseTypeDef:
        """
        Describes one or more of your compute environments.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_compute_environments.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_compute_environments)
        """

    def describe_consumable_resource(
        self, **kwargs: Unpack[DescribeConsumableResourceRequestTypeDef]
    ) -> DescribeConsumableResourceResponseTypeDef:
        """
        Returns a description of the specified consumable resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_consumable_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_consumable_resource)
        """

    def describe_job_definitions(
        self, **kwargs: Unpack[DescribeJobDefinitionsRequestTypeDef]
    ) -> DescribeJobDefinitionsResponseTypeDef:
        """
        Describes a list of job definitions.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_job_definitions.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_job_definitions)
        """

    def describe_job_queues(
        self, **kwargs: Unpack[DescribeJobQueuesRequestTypeDef]
    ) -> DescribeJobQueuesResponseTypeDef:
        """
        Describes one or more of your job queues.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_job_queues.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_job_queues)
        """

    def describe_jobs(
        self, **kwargs: Unpack[DescribeJobsRequestTypeDef]
    ) -> DescribeJobsResponseTypeDef:
        """
        Describes a list of Batch jobs.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_jobs.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_jobs)
        """

    def describe_scheduling_policies(
        self, **kwargs: Unpack[DescribeSchedulingPoliciesRequestTypeDef]
    ) -> DescribeSchedulingPoliciesResponseTypeDef:
        """
        Describes one or more of your scheduling policies.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_scheduling_policies.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_scheduling_policies)
        """

    def describe_service_environments(
        self, **kwargs: Unpack[DescribeServiceEnvironmentsRequestTypeDef]
    ) -> DescribeServiceEnvironmentsResponseTypeDef:
        """
        Describes one or more of your service environments.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_service_environments.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_service_environments)
        """

    def describe_service_job(
        self, **kwargs: Unpack[DescribeServiceJobRequestTypeDef]
    ) -> DescribeServiceJobResponseTypeDef:
        """
        The details of a service job.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/describe_service_job.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#describe_service_job)
        """

    def get_job_queue_snapshot(
        self, **kwargs: Unpack[GetJobQueueSnapshotRequestTypeDef]
    ) -> GetJobQueueSnapshotResponseTypeDef:
        """
        Provides a list of the first 100 <code>RUNNABLE</code> jobs associated to a
        single job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_job_queue_snapshot.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_job_queue_snapshot)
        """

    def list_consumable_resources(
        self, **kwargs: Unpack[ListConsumableResourcesRequestTypeDef]
    ) -> ListConsumableResourcesResponseTypeDef:
        """
        Returns a list of Batch consumable resources.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/list_consumable_resources.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#list_consumable_resources)
        """

    def list_jobs(self, **kwargs: Unpack[ListJobsRequestTypeDef]) -> ListJobsResponseTypeDef:
        """
        Returns a list of Batch jobs.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/list_jobs.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#list_jobs)
        """

    def list_jobs_by_consumable_resource(
        self, **kwargs: Unpack[ListJobsByConsumableResourceRequestTypeDef]
    ) -> ListJobsByConsumableResourceResponseTypeDef:
        """
        Returns a list of Batch jobs that require a specific consumable resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/list_jobs_by_consumable_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#list_jobs_by_consumable_resource)
        """

    def list_scheduling_policies(
        self, **kwargs: Unpack[ListSchedulingPoliciesRequestTypeDef]
    ) -> ListSchedulingPoliciesResponseTypeDef:
        """
        Returns a list of Batch scheduling policies.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/list_scheduling_policies.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#list_scheduling_policies)
        """

    def list_service_jobs(
        self, **kwargs: Unpack[ListServiceJobsRequestTypeDef]
    ) -> ListServiceJobsResponseTypeDef:
        """
        Returns a list of service jobs for a specified job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/list_service_jobs.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#list_service_jobs)
        """

    def list_tags_for_resource(
        self, **kwargs: Unpack[ListTagsForResourceRequestTypeDef]
    ) -> ListTagsForResourceResponseTypeDef:
        """
        Lists the tags for an Batch resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/list_tags_for_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#list_tags_for_resource)
        """

    def register_job_definition(
        self, **kwargs: Unpack[RegisterJobDefinitionRequestTypeDef]
    ) -> RegisterJobDefinitionResponseTypeDef:
        """
        Registers an Batch job definition.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/register_job_definition.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#register_job_definition)
        """

    def submit_job(self, **kwargs: Unpack[SubmitJobRequestTypeDef]) -> SubmitJobResponseTypeDef:
        """
        Submits an Batch job from a job definition.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/submit_job.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#submit_job)
        """

    def submit_service_job(
        self, **kwargs: Unpack[SubmitServiceJobRequestTypeDef]
    ) -> SubmitServiceJobResponseTypeDef:
        """
        Submits a service job to a specified job queue to run on SageMaker AI.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/submit_service_job.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#submit_service_job)
        """

    def tag_resource(self, **kwargs: Unpack[TagResourceRequestTypeDef]) -> dict[str, Any]:
        """
        Associates the specified tags to a resource with the specified
        <code>resourceArn</code>.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/tag_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#tag_resource)
        """

    def terminate_job(self, **kwargs: Unpack[TerminateJobRequestTypeDef]) -> dict[str, Any]:
        """
        Terminates a job in a job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/terminate_job.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#terminate_job)
        """

    def terminate_service_job(
        self, **kwargs: Unpack[TerminateServiceJobRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Terminates a service job in a job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/terminate_service_job.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#terminate_service_job)
        """

    def untag_resource(self, **kwargs: Unpack[UntagResourceRequestTypeDef]) -> dict[str, Any]:
        """
        Deletes specified tags from an Batch resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/untag_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#untag_resource)
        """

    def update_compute_environment(
        self, **kwargs: Unpack[UpdateComputeEnvironmentRequestTypeDef]
    ) -> UpdateComputeEnvironmentResponseTypeDef:
        """
        Updates an Batch compute environment.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/update_compute_environment.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#update_compute_environment)
        """

    def update_consumable_resource(
        self, **kwargs: Unpack[UpdateConsumableResourceRequestTypeDef]
    ) -> UpdateConsumableResourceResponseTypeDef:
        """
        Updates a consumable resource.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/update_consumable_resource.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#update_consumable_resource)
        """

    def update_job_queue(
        self, **kwargs: Unpack[UpdateJobQueueRequestTypeDef]
    ) -> UpdateJobQueueResponseTypeDef:
        """
        Updates a job queue.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/update_job_queue.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#update_job_queue)
        """

    def update_scheduling_policy(
        self, **kwargs: Unpack[UpdateSchedulingPolicyRequestTypeDef]
    ) -> dict[str, Any]:
        """
        Updates a scheduling policy.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/update_scheduling_policy.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#update_scheduling_policy)
        """

    def update_service_environment(
        self, **kwargs: Unpack[UpdateServiceEnvironmentRequestTypeDef]
    ) -> UpdateServiceEnvironmentResponseTypeDef:
        """
        Updates a service environment.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/update_service_environment.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#update_service_environment)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["describe_compute_environments"]
    ) -> DescribeComputeEnvironmentsPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["describe_job_definitions"]
    ) -> DescribeJobDefinitionsPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["describe_job_queues"]
    ) -> DescribeJobQueuesPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["describe_service_environments"]
    ) -> DescribeServiceEnvironmentsPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["list_consumable_resources"]
    ) -> ListConsumableResourcesPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["list_jobs_by_consumable_resource"]
    ) -> ListJobsByConsumableResourcePaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["list_jobs"]
    ) -> ListJobsPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["list_scheduling_policies"]
    ) -> ListSchedulingPoliciesPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """

    @overload  # type: ignore[override]
    def get_paginator(  # type: ignore[override]
        self, operation_name: Literal["list_service_jobs"]
    ) -> ListServiceJobsPaginator:
        """
        Create a paginator for an operation.

        [Show boto3 documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/batch/client/get_paginator.html)
        [Show types-boto3 documentation](https://youtype.github.io/types_boto3_docs/types_boto3_batch/client/#get_paginator)
        """
