from kubernetes_asyncio.client.models import V1SecretReference
from typing import Any

class V1CSIPersistentVolumeSource:
    def __eq__(self, other: Any) -> bool: ...
    def __init__(self, controller_expand_secret_ref: V1SecretReference | None = None, controller_publish_secret_ref: V1SecretReference | None = None, driver: str | None = None, fs_type: str | None = None, node_expand_secret_ref: V1SecretReference | None = None, node_publish_secret_ref: V1SecretReference | None = None, node_stage_secret_ref: V1SecretReference | None = None, read_only: bool | None = None, volume_attributes: dict[str, str] | None = None, volume_handle: str | 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 controller_expand_secret_ref(self) -> V1SecretReference: ...
    @controller_expand_secret_ref.setter
    def controller_expand_secret_ref(self, controller_expand_secret_ref: V1SecretReference) -> None: ...
    @property
    def controller_publish_secret_ref(self) -> V1SecretReference: ...
    @controller_publish_secret_ref.setter
    def controller_publish_secret_ref(self, controller_publish_secret_ref: V1SecretReference) -> None: ...
    @property
    def driver(self) -> str: ...
    @driver.setter
    def driver(self, driver: str) -> None: ...
    @property
    def fs_type(self) -> str: ...
    @fs_type.setter
    def fs_type(self, fs_type: str) -> None: ...
    @property
    def node_expand_secret_ref(self) -> V1SecretReference: ...
    @node_expand_secret_ref.setter
    def node_expand_secret_ref(self, node_expand_secret_ref: V1SecretReference) -> None: ...
    @property
    def node_publish_secret_ref(self) -> V1SecretReference: ...
    @node_publish_secret_ref.setter
    def node_publish_secret_ref(self, node_publish_secret_ref: V1SecretReference) -> None: ...
    @property
    def node_stage_secret_ref(self) -> V1SecretReference: ...
    @node_stage_secret_ref.setter
    def node_stage_secret_ref(self, node_stage_secret_ref: V1SecretReference) -> None: ...
    @property
    def read_only(self) -> bool: ...
    @read_only.setter
    def read_only(self, read_only: bool) -> None: ...
    @property
    def volume_attributes(self) -> dict[str, str]: ...
    @volume_attributes.setter
    def volume_attributes(self, volume_attributes: dict[str, str]) -> None: ...
    @property
    def volume_handle(self) -> str: ...
    @volume_handle.setter
    def volume_handle(self, volume_handle: str) -> None: ...
