1# --------------------------------------------------------------------------------------------
2# Copyright (c) Microsoft Corporation. All rights reserved.
3# Licensed under the MIT License. See License.txt in the project root for license information.
4# --------------------------------------------------------------------------------------------
5# Generated file, DO NOT EDIT
6# Changes may cause incorrect behavior and will be lost if the code is regenerated.
7# --------------------------------------------------------------------------------------------
8
9from msrest.serialization import Model
10
11
12class InputDescriptor(Model):
13    """InputDescriptor.
14
15    :param dependency_input_ids: The ids of all inputs that the value of this input is dependent on.
16    :type dependency_input_ids: list of str
17    :param description: Description of what this input is used for
18    :type description: str
19    :param group_name: The group localized name to which this input belongs and can be shown as a header for the container that will include all the inputs in the group.
20    :type group_name: str
21    :param has_dynamic_value_information: If true, the value information for this input is dynamic and should be fetched when the value of dependency inputs change.
22    :type has_dynamic_value_information: bool
23    :param id: Identifier for the subscription input
24    :type id: str
25    :param input_mode: Mode in which the value of this input should be entered
26    :type input_mode: object
27    :param is_confidential: Gets whether this input is confidential, such as for a password or application key
28    :type is_confidential: bool
29    :param name: Localized name which can be shown as a label for the subscription input
30    :type name: str
31    :param properties: Custom properties for the input which can be used by the service provider
32    :type properties: dict
33    :param type: Underlying data type for the input value. When this value is specified, InputMode, Validation and Values are optional.
34    :type type: str
35    :param use_in_default_description: Gets whether this input is included in the default generated action description.
36    :type use_in_default_description: bool
37    :param validation: Information to use to validate this input's value
38    :type validation: :class:`InputValidation <microsoft.-visual-studio.-services.-web-api.v4_1.models.InputValidation>`
39    :param value_hint: A hint for input value. It can be used in the UI as the input placeholder.
40    :type value_hint: str
41    :param values: Information about possible values for this input
42    :type values: :class:`InputValues <microsoft.-visual-studio.-services.-web-api.v4_1.models.InputValues>`
43    """
44
45    _attribute_map = {
46        'dependency_input_ids': {'key': 'dependencyInputIds', 'type': '[str]'},
47        'description': {'key': 'description', 'type': 'str'},
48        'group_name': {'key': 'groupName', 'type': 'str'},
49        'has_dynamic_value_information': {'key': 'hasDynamicValueInformation', 'type': 'bool'},
50        'id': {'key': 'id', 'type': 'str'},
51        'input_mode': {'key': 'inputMode', 'type': 'object'},
52        'is_confidential': {'key': 'isConfidential', 'type': 'bool'},
53        'name': {'key': 'name', 'type': 'str'},
54        'properties': {'key': 'properties', 'type': '{object}'},
55        'type': {'key': 'type', 'type': 'str'},
56        'use_in_default_description': {'key': 'useInDefaultDescription', 'type': 'bool'},
57        'validation': {'key': 'validation', 'type': 'InputValidation'},
58        'value_hint': {'key': 'valueHint', 'type': 'str'},
59        'values': {'key': 'values', 'type': 'InputValues'}
60    }
61
62    def __init__(self, dependency_input_ids=None, description=None, group_name=None, has_dynamic_value_information=None, id=None, input_mode=None, is_confidential=None, name=None, properties=None, type=None, use_in_default_description=None, validation=None, value_hint=None, values=None):
63        super(InputDescriptor, self).__init__()
64        self.dependency_input_ids = dependency_input_ids
65        self.description = description
66        self.group_name = group_name
67        self.has_dynamic_value_information = has_dynamic_value_information
68        self.id = id
69        self.input_mode = input_mode
70        self.is_confidential = is_confidential
71        self.name = name
72        self.properties = properties
73        self.type = type
74        self.use_in_default_description = use_in_default_description
75        self.validation = validation
76        self.value_hint = value_hint
77        self.values = values
78