from kubernetes_asyncio.client.models import V2CrossVersionObjectReference
from kubernetes_asyncio.client.models import V2MetricIdentifier
from kubernetes_asyncio.client.models import V2MetricTarget
from typing import Any

class V2ObjectMetricSource:
    def __eq__(self, other: Any) -> bool: ...
    def __init__(self, described_object: V2CrossVersionObjectReference | None = None, metric: V2MetricIdentifier | None = None, target: V2MetricTarget | 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 described_object(self) -> V2CrossVersionObjectReference: ...
    @described_object.setter
    def described_object(self, described_object: V2CrossVersionObjectReference) -> None: ...
    @property
    def metric(self) -> V2MetricIdentifier: ...
    @metric.setter
    def metric(self, metric: V2MetricIdentifier) -> None: ...
    @property
    def target(self) -> V2MetricTarget: ...
    @target.setter
    def target(self, target: V2MetricTarget) -> None: ...
