# coding=utf-8
# *** WARNING: this file was generated by pulumi-language-python. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import builtins as _builtins
import warnings
import sys
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
if sys.version_info >= (3, 11):
    from typing import NotRequired, TypedDict, TypeAlias
else:
    from typing_extensions import NotRequired, TypedDict, TypeAlias
from .. import _utilities

__all__ = [
    'GetExtensionsVersionsExactFiltersArgs',
    'GetExtensionsVersionsExactFiltersArgsDict',
    'GetExtensionsVersionsFiltersArgs',
    'GetExtensionsVersionsFiltersArgsDict',
    'GetOverlaysVersionsFiltersArgs',
    'GetOverlaysVersionsFiltersArgsDict',
    'GetVersionsFiltersArgs',
    'GetVersionsFiltersArgsDict',
]

MYPY = False

if not MYPY:
    class GetExtensionsVersionsExactFiltersArgsDict(TypedDict):
        names: NotRequired[Sequence[_builtins.str]]
        """
        The exact name match of the extension to filter by.
        """
elif False:
    GetExtensionsVersionsExactFiltersArgsDict: TypeAlias = Mapping[str, Any]

@pulumi.input_type
class GetExtensionsVersionsExactFiltersArgs:
    def __init__(__self__, *,
                 names: Optional[Sequence[_builtins.str]] = None):
        """
        :param Sequence[_builtins.str] names: The exact name match of the extension to filter by.
        """
        if names is not None:
            pulumi.set(__self__, "names", names)

    @_builtins.property
    @pulumi.getter
    def names(self) -> Optional[Sequence[_builtins.str]]:
        """
        The exact name match of the extension to filter by.
        """
        return pulumi.get(self, "names")

    @names.setter
    def names(self, value: Optional[Sequence[_builtins.str]]):
        pulumi.set(self, "names", value)


if not MYPY:
    class GetExtensionsVersionsFiltersArgsDict(TypedDict):
        names: NotRequired[Sequence[_builtins.str]]
        """
        The name of the extension to filter by.
        """
elif False:
    GetExtensionsVersionsFiltersArgsDict: TypeAlias = Mapping[str, Any]

@pulumi.input_type
class GetExtensionsVersionsFiltersArgs:
    def __init__(__self__, *,
                 names: Optional[Sequence[_builtins.str]] = None):
        """
        :param Sequence[_builtins.str] names: The name of the extension to filter by.
        """
        if names is not None:
            pulumi.set(__self__, "names", names)

    @_builtins.property
    @pulumi.getter
    def names(self) -> Optional[Sequence[_builtins.str]]:
        """
        The name of the extension to filter by.
        """
        return pulumi.get(self, "names")

    @names.setter
    def names(self, value: Optional[Sequence[_builtins.str]]):
        pulumi.set(self, "names", value)


if not MYPY:
    class GetOverlaysVersionsFiltersArgsDict(TypedDict):
        name: NotRequired[_builtins.str]
        """
        The name of the overlay to filter by.
        """
elif False:
    GetOverlaysVersionsFiltersArgsDict: TypeAlias = Mapping[str, Any]

@pulumi.input_type
class GetOverlaysVersionsFiltersArgs:
    def __init__(__self__, *,
                 name: Optional[_builtins.str] = None):
        """
        :param _builtins.str name: The name of the overlay to filter by.
        """
        if name is not None:
            pulumi.set(__self__, "name", name)

    @_builtins.property
    @pulumi.getter
    def name(self) -> Optional[_builtins.str]:
        """
        The name of the overlay to filter by.
        """
        return pulumi.get(self, "name")

    @name.setter
    def name(self, value: Optional[_builtins.str]):
        pulumi.set(self, "name", value)


if not MYPY:
    class GetVersionsFiltersArgsDict(TypedDict):
        stable_versions_only: NotRequired[_builtins.bool]
        """
        If set to true, only stable versions will be returned. If set to false, all versions will be returned.
        """
elif False:
    GetVersionsFiltersArgsDict: TypeAlias = Mapping[str, Any]

@pulumi.input_type
class GetVersionsFiltersArgs:
    def __init__(__self__, *,
                 stable_versions_only: Optional[_builtins.bool] = None):
        """
        :param _builtins.bool stable_versions_only: If set to true, only stable versions will be returned. If set to false, all versions will be returned.
        """
        if stable_versions_only is not None:
            pulumi.set(__self__, "stable_versions_only", stable_versions_only)

    @_builtins.property
    @pulumi.getter(name="stableVersionsOnly")
    def stable_versions_only(self) -> Optional[_builtins.bool]:
        """
        If set to true, only stable versions will be returned. If set to false, all versions will be returned.
        """
        return pulumi.get(self, "stable_versions_only")

    @stable_versions_only.setter
    def stable_versions_only(self, value: Optional[_builtins.bool]):
        pulumi.set(self, "stable_versions_only", value)


