from kubernetes_asyncio.client.models import V1LabelSelector
from kubernetes_asyncio.client.models import V1PodFailurePolicy
from kubernetes_asyncio.client.models import V1PodTemplateSpec
from kubernetes_asyncio.client.models import V1SuccessPolicy
from typing import Any

class V1JobSpec:
    def __eq__(self, other: Any) -> bool: ...
    def __init__(self, active_deadline_seconds: int | None = None, backoff_limit: int | None = None, backoff_limit_per_index: int | None = None, completion_mode: str | None = None, completions: int | None = None, managed_by: str | None = None, manual_selector: bool | None = None, max_failed_indexes: int | None = None, parallelism: int | None = None, pod_failure_policy: V1PodFailurePolicy | None = None, pod_replacement_policy: str | None = None, selector: V1LabelSelector | None = None, success_policy: V1SuccessPolicy | None = None, suspend: bool | None = None, template: V1PodTemplateSpec | None = None, ttl_seconds_after_finished: int | None = None, local_vars_configuration: Any | None = None) -> None: ...
    def __ne__(self, other: Any) -> bool: ...
    def __repr__(self) -> str: ...
    def to_dict(self, serialize: bool = False) -> dict[str, Any]: ...
    def to_str(self) -> str: ...
    @property
    def active_deadline_seconds(self) -> int: ...
    @active_deadline_seconds.setter
    def active_deadline_seconds(self, active_deadline_seconds: int) -> None: ...
    @property
    def backoff_limit(self) -> int: ...
    @backoff_limit.setter
    def backoff_limit(self, backoff_limit: int) -> None: ...
    @property
    def backoff_limit_per_index(self) -> int: ...
    @backoff_limit_per_index.setter
    def backoff_limit_per_index(self, backoff_limit_per_index: int) -> None: ...
    @property
    def completion_mode(self) -> str: ...
    @completion_mode.setter
    def completion_mode(self, completion_mode: str) -> None: ...
    @property
    def completions(self) -> int: ...
    @completions.setter
    def completions(self, completions: int) -> None: ...
    @property
    def managed_by(self) -> str: ...
    @managed_by.setter
    def managed_by(self, managed_by: str) -> None: ...
    @property
    def manual_selector(self) -> bool: ...
    @manual_selector.setter
    def manual_selector(self, manual_selector: bool) -> None: ...
    @property
    def max_failed_indexes(self) -> int: ...
    @max_failed_indexes.setter
    def max_failed_indexes(self, max_failed_indexes: int) -> None: ...
    @property
    def parallelism(self) -> int: ...
    @parallelism.setter
    def parallelism(self, parallelism: int) -> None: ...
    @property
    def pod_failure_policy(self) -> V1PodFailurePolicy: ...
    @pod_failure_policy.setter
    def pod_failure_policy(self, pod_failure_policy: V1PodFailurePolicy) -> None: ...
    @property
    def pod_replacement_policy(self) -> str: ...
    @pod_replacement_policy.setter
    def pod_replacement_policy(self, pod_replacement_policy: str) -> None: ...
    @property
    def selector(self) -> V1LabelSelector: ...
    @selector.setter
    def selector(self, selector: V1LabelSelector) -> None: ...
    @property
    def success_policy(self) -> V1SuccessPolicy: ...
    @success_policy.setter
    def success_policy(self, success_policy: V1SuccessPolicy) -> None: ...
    @property
    def suspend(self) -> bool: ...
    @suspend.setter
    def suspend(self, suspend: bool) -> None: ...
    @property
    def template(self) -> V1PodTemplateSpec: ...
    @template.setter
    def template(self, template: V1PodTemplateSpec) -> None: ...
    @property
    def ttl_seconds_after_finished(self) -> int: ...
    @ttl_seconds_after_finished.setter
    def ttl_seconds_after_finished(self, ttl_seconds_after_finished: int) -> None: ...
