aws-sdk-amplifyuibuilder 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1785 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/signature_v4.rb'
31
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
+
33
+ Aws::Plugins::GlobalConfiguration.add_identifier(:amplifyuibuilder)
34
+
35
+ module Aws::AmplifyUIBuilder
36
+ # An API client for AmplifyUIBuilder. To construct a client, you need to configure a `:region` and `:credentials`.
37
+ #
38
+ # client = Aws::AmplifyUIBuilder::Client.new(
39
+ # region: region_name,
40
+ # credentials: credentials,
41
+ # # ...
42
+ # )
43
+ #
44
+ # For details on configuring region and credentials see
45
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
46
+ #
47
+ # See {#initialize} for a full list of supported configuration options.
48
+ class Client < Seahorse::Client::Base
49
+
50
+ include Aws::ClientStubs
51
+
52
+ @identifier = :amplifyuibuilder
53
+
54
+ set_api(ClientApi::API)
55
+
56
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
57
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
58
+ add_plugin(Aws::Plugins::Logging)
59
+ add_plugin(Aws::Plugins::ParamConverter)
60
+ add_plugin(Aws::Plugins::ParamValidator)
61
+ add_plugin(Aws::Plugins::UserAgent)
62
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
63
+ add_plugin(Aws::Plugins::RetryErrors)
64
+ add_plugin(Aws::Plugins::GlobalConfiguration)
65
+ add_plugin(Aws::Plugins::RegionalEndpoint)
66
+ add_plugin(Aws::Plugins::EndpointDiscovery)
67
+ add_plugin(Aws::Plugins::EndpointPattern)
68
+ add_plugin(Aws::Plugins::ResponsePaging)
69
+ add_plugin(Aws::Plugins::StubResponses)
70
+ add_plugin(Aws::Plugins::IdempotencyToken)
71
+ add_plugin(Aws::Plugins::JsonvalueConverter)
72
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
73
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
+ add_plugin(Aws::Plugins::TransferEncoding)
75
+ add_plugin(Aws::Plugins::HttpChecksum)
76
+ add_plugin(Aws::Plugins::SignatureV4)
77
+ add_plugin(Aws::Plugins::Protocols::RestJson)
78
+
79
+ # @overload initialize(options)
80
+ # @param [Hash] options
81
+ # @option options [required, Aws::CredentialProvider] :credentials
82
+ # Your AWS credentials. This can be an instance of any one of the
83
+ # following classes:
84
+ #
85
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
+ # credentials.
87
+ #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
102
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
103
+ # from an EC2 IMDS on an EC2 instance.
104
+ #
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
107
+ #
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
110
+ #
111
+ # When `:credentials` are not configured directly, the following
112
+ # locations will be searched for credentials:
113
+ #
114
+ # * `Aws.config[:credentials]`
115
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
116
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
117
+ # * `~/.aws/credentials`
118
+ # * `~/.aws/config`
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts. Instance profile credential
123
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
124
+ # to true.
125
+ #
126
+ # @option options [required, String] :region
127
+ # The AWS region to connect to. The configured `:region` is
128
+ # used to determine the service `:endpoint`. When not passed,
129
+ # a default `:region` is searched for in the following locations:
130
+ #
131
+ # * `Aws.config[:region]`
132
+ # * `ENV['AWS_REGION']`
133
+ # * `ENV['AMAZON_REGION']`
134
+ # * `ENV['AWS_DEFAULT_REGION']`
135
+ # * `~/.aws/credentials`
136
+ # * `~/.aws/config`
137
+ #
138
+ # @option options [String] :access_key_id
139
+ #
140
+ # @option options [Boolean] :active_endpoint_cache (false)
141
+ # When set to `true`, a thread polling for endpoints will be running in
142
+ # the background every 60 secs (default). Defaults to `false`.
143
+ #
144
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
145
+ # Used only in `adaptive` retry mode. When true, the request will sleep
146
+ # until there is sufficent client side capacity to retry the request.
147
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
148
+ # not retry instead of sleeping.
149
+ #
150
+ # @option options [Boolean] :client_side_monitoring (false)
151
+ # When `true`, client-side metrics will be collected for all API requests from
152
+ # this client.
153
+ #
154
+ # @option options [String] :client_side_monitoring_client_id ("")
155
+ # Allows you to provide an identifier for this client which will be attached to
156
+ # all generated client side metrics. Defaults to an empty string.
157
+ #
158
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
159
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
160
+ # side monitoring agent is running on, where client metrics will be published via UDP.
161
+ #
162
+ # @option options [Integer] :client_side_monitoring_port (31000)
163
+ # Required for publishing client metrics. The port that the client side monitoring
164
+ # agent is running on, where client metrics will be published via UDP.
165
+ #
166
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
167
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
168
+ # will use the Client Side Monitoring Agent Publisher.
169
+ #
170
+ # @option options [Boolean] :convert_params (true)
171
+ # When `true`, an attempt is made to coerce request parameters into
172
+ # the required types.
173
+ #
174
+ # @option options [Boolean] :correct_clock_skew (true)
175
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
176
+ # a clock skew correction and retry requests with skewed client clocks.
177
+ #
178
+ # @option options [Boolean] :disable_host_prefix_injection (false)
179
+ # Set to true to disable SDK automatically adding host prefix
180
+ # to default service endpoint when available.
181
+ #
182
+ # @option options [String] :endpoint
183
+ # The client endpoint is normally constructed from the `:region`
184
+ # option. You should only configure an `:endpoint` when connecting
185
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
186
+ #
187
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
188
+ # Used for the maximum size limit of the LRU cache storing endpoints data
189
+ # for endpoint discovery enabled operations. Defaults to 1000.
190
+ #
191
+ # @option options [Integer] :endpoint_cache_max_threads (10)
192
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
193
+ #
194
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
195
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
196
+ # Use this option to config the time interval in seconds for making
197
+ # requests fetching endpoints information. Defaults to 60 sec.
198
+ #
199
+ # @option options [Boolean] :endpoint_discovery (false)
200
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
201
+ #
202
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
203
+ # The log formatter.
204
+ #
205
+ # @option options [Symbol] :log_level (:info)
206
+ # The log level to send messages to the `:logger` at.
207
+ #
208
+ # @option options [Logger] :logger
209
+ # The Logger instance to send log messages to. If this option
210
+ # is not set, logging will be disabled.
211
+ #
212
+ # @option options [Integer] :max_attempts (3)
213
+ # An integer representing the maximum number attempts that will be made for
214
+ # a single request, including the initial attempt. For example,
215
+ # setting this value to 5 will result in a request being retried up to
216
+ # 4 times. Used in `standard` and `adaptive` retry modes.
217
+ #
218
+ # @option options [String] :profile ("default")
219
+ # Used when loading credentials from the shared credentials file
220
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
221
+ #
222
+ # @option options [Proc] :retry_backoff
223
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
224
+ # This option is only used in the `legacy` retry mode.
225
+ #
226
+ # @option options [Float] :retry_base_delay (0.3)
227
+ # The base delay in seconds used by the default backoff function. This option
228
+ # is only used in the `legacy` retry mode.
229
+ #
230
+ # @option options [Symbol] :retry_jitter (:none)
231
+ # A delay randomiser function used by the default backoff function.
232
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
233
+ # otherwise a Proc that takes and returns a number. This option is only used
234
+ # in the `legacy` retry mode.
235
+ #
236
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
237
+ #
238
+ # @option options [Integer] :retry_limit (3)
239
+ # The maximum number of times to retry failed requests. Only
240
+ # ~ 500 level server errors and certain ~ 400 level client errors
241
+ # are retried. Generally, these are throttling errors, data
242
+ # checksum errors, networking errors, timeout errors, auth errors,
243
+ # endpoint discovery, and errors from expired credentials.
244
+ # This option is only used in the `legacy` retry mode.
245
+ #
246
+ # @option options [Integer] :retry_max_delay (0)
247
+ # The maximum number of seconds to delay between retries (0 for no limit)
248
+ # used by the default backoff function. This option is only used in the
249
+ # `legacy` retry mode.
250
+ #
251
+ # @option options [String] :retry_mode ("legacy")
252
+ # Specifies which retry algorithm to use. Values are:
253
+ #
254
+ # * `legacy` - The pre-existing retry behavior. This is default value if
255
+ # no retry mode is provided.
256
+ #
257
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
258
+ # This includes support for retry quotas, which limit the number of
259
+ # unsuccessful retries a client can make.
260
+ #
261
+ # * `adaptive` - An experimental retry mode that includes all the
262
+ # functionality of `standard` mode along with automatic client side
263
+ # throttling. This is a provisional mode that may change behavior
264
+ # in the future.
265
+ #
266
+ #
267
+ # @option options [String] :secret_access_key
268
+ #
269
+ # @option options [String] :session_token
270
+ #
271
+ # @option options [Boolean] :stub_responses (false)
272
+ # Causes the client to return stubbed responses. By default
273
+ # fake responses are generated and returned. You can specify
274
+ # the response data to return or errors to raise by calling
275
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
276
+ #
277
+ # ** Please note ** When response stubbing is enabled, no HTTP
278
+ # requests are made, and retries are disabled.
279
+ #
280
+ # @option options [Boolean] :use_dualstack_endpoint
281
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
+ # will be used if available.
283
+ #
284
+ # @option options [Boolean] :use_fips_endpoint
285
+ # When set to `true`, fips compatible endpoints will be used if available.
286
+ # When a `fips` region is used, the region is normalized and this config
287
+ # is set to `true`.
288
+ #
289
+ # @option options [Boolean] :validate_params (true)
290
+ # When `true`, request parameters are validated before
291
+ # sending the request.
292
+ #
293
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
294
+ # requests through. Formatted like 'http://proxy.com:123'.
295
+ #
296
+ # @option options [Float] :http_open_timeout (15) The number of
297
+ # seconds to wait when opening a HTTP session before raising a
298
+ # `Timeout::Error`.
299
+ #
300
+ # @option options [Integer] :http_read_timeout (60) The default
301
+ # number of seconds to wait for response data. This value can
302
+ # safely be set per-request on the session.
303
+ #
304
+ # @option options [Float] :http_idle_timeout (5) The number of
305
+ # seconds a connection is allowed to sit idle before it is
306
+ # considered stale. Stale connections are closed and removed
307
+ # from the pool before making a request.
308
+ #
309
+ # @option options [Float] :http_continue_timeout (1) The number of
310
+ # seconds to wait for a 100-continue response before sending the
311
+ # request body. This option has no effect unless the request has
312
+ # "Expect" header set to "100-continue". Defaults to `nil` which
313
+ # disables this behaviour. This value can safely be set per
314
+ # request on the session.
315
+ #
316
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
317
+ # HTTP debug output will be sent to the `:logger`.
318
+ #
319
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
320
+ # SSL peer certificates are verified when establishing a
321
+ # connection.
322
+ #
323
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
324
+ # certificate authority bundle file that should be used when
325
+ # verifying peer certificates. If you do not pass
326
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
327
+ # will be used if available.
328
+ #
329
+ # @option options [String] :ssl_ca_directory Full path of the
330
+ # directory that contains the unbundled SSL certificate
331
+ # authority files for verifying peer certificates. If you do
332
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
333
+ # system default will be used if available.
334
+ #
335
+ def initialize(*args)
336
+ super
337
+ end
338
+
339
+ # @!group API Operations
340
+
341
+ # Creates a new component for an Amplify app.
342
+ #
343
+ # @option params [required, String] :app_id
344
+ # The unique ID of the Amplify app to associate with the component.
345
+ #
346
+ # @option params [String] :client_token
347
+ # The unique client token.
348
+ #
349
+ # **A suitable default value is auto-generated.** You should normally
350
+ # not need to pass this option.**
351
+ #
352
+ # @option params [required, Types::CreateComponentData] :component_to_create
353
+ # Represents the configuration of the component to create.
354
+ #
355
+ # @option params [required, String] :environment_name
356
+ # The name of the backend environment that is a part of the Amplify app.
357
+ #
358
+ # @return [Types::CreateComponentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
359
+ #
360
+ # * {Types::CreateComponentResponse#entity #entity} => Types::Component
361
+ #
362
+ # @example Request syntax with placeholder values
363
+ #
364
+ # resp = client.create_component({
365
+ # app_id: "String", # required
366
+ # client_token: "String",
367
+ # component_to_create: { # required
368
+ # binding_properties: { # required
369
+ # "String" => {
370
+ # binding_properties: {
371
+ # bucket: "String",
372
+ # default_value: "String",
373
+ # field: "String",
374
+ # key: "String",
375
+ # model: "String",
376
+ # predicates: [
377
+ # {
378
+ # and: {
379
+ # # recursive PredicateList
380
+ # },
381
+ # field: "String",
382
+ # operand: "String",
383
+ # operator: "String",
384
+ # or: {
385
+ # # recursive PredicateList
386
+ # },
387
+ # },
388
+ # ],
389
+ # user_attribute: "String",
390
+ # },
391
+ # default_value: "String",
392
+ # type: "String",
393
+ # },
394
+ # },
395
+ # children: [
396
+ # {
397
+ # children: {
398
+ # # recursive ComponentChildList
399
+ # },
400
+ # component_type: "String", # required
401
+ # name: "String", # required
402
+ # properties: { # required
403
+ # "String" => {
404
+ # binding_properties: {
405
+ # field: "String",
406
+ # property: "String", # required
407
+ # },
408
+ # bindings: {
409
+ # "String" => {
410
+ # element: "String", # required
411
+ # property: "String", # required
412
+ # },
413
+ # },
414
+ # collection_binding_properties: {
415
+ # field: "String",
416
+ # property: "String", # required
417
+ # },
418
+ # concat: [
419
+ # {
420
+ # # recursive ComponentProperty
421
+ # },
422
+ # ],
423
+ # condition: {
424
+ # else: {
425
+ # # recursive ComponentProperty
426
+ # },
427
+ # field: "String",
428
+ # operand: "String",
429
+ # operator: "String",
430
+ # property: "String",
431
+ # then: {
432
+ # # recursive ComponentProperty
433
+ # },
434
+ # },
435
+ # configured: false,
436
+ # default_value: "String",
437
+ # event: "String",
438
+ # imported_value: "String",
439
+ # model: "String",
440
+ # type: "String",
441
+ # user_attribute: "String",
442
+ # value: "String",
443
+ # },
444
+ # },
445
+ # },
446
+ # ],
447
+ # collection_properties: {
448
+ # "String" => {
449
+ # identifiers: ["String"],
450
+ # model: "String", # required
451
+ # predicate: {
452
+ # and: [
453
+ # {
454
+ # # recursive Predicate
455
+ # },
456
+ # ],
457
+ # field: "String",
458
+ # operand: "String",
459
+ # operator: "String",
460
+ # or: [
461
+ # {
462
+ # # recursive Predicate
463
+ # },
464
+ # ],
465
+ # },
466
+ # sort: [
467
+ # {
468
+ # direction: "ASC", # required, accepts ASC, DESC
469
+ # field: "String", # required
470
+ # },
471
+ # ],
472
+ # },
473
+ # },
474
+ # component_type: "ComponentType", # required
475
+ # name: "ComponentName", # required
476
+ # overrides: { # required
477
+ # "String" => {
478
+ # "String" => "String",
479
+ # },
480
+ # },
481
+ # properties: { # required
482
+ # "String" => {
483
+ # binding_properties: {
484
+ # field: "String",
485
+ # property: "String", # required
486
+ # },
487
+ # bindings: {
488
+ # "String" => {
489
+ # element: "String", # required
490
+ # property: "String", # required
491
+ # },
492
+ # },
493
+ # collection_binding_properties: {
494
+ # field: "String",
495
+ # property: "String", # required
496
+ # },
497
+ # concat: [
498
+ # {
499
+ # # recursive ComponentProperty
500
+ # },
501
+ # ],
502
+ # condition: {
503
+ # else: {
504
+ # # recursive ComponentProperty
505
+ # },
506
+ # field: "String",
507
+ # operand: "String",
508
+ # operator: "String",
509
+ # property: "String",
510
+ # then: {
511
+ # # recursive ComponentProperty
512
+ # },
513
+ # },
514
+ # configured: false,
515
+ # default_value: "String",
516
+ # event: "String",
517
+ # imported_value: "String",
518
+ # model: "String",
519
+ # type: "String",
520
+ # user_attribute: "String",
521
+ # value: "String",
522
+ # },
523
+ # },
524
+ # source_id: "String",
525
+ # tags: {
526
+ # "TagKey" => "TagValue",
527
+ # },
528
+ # variants: [ # required
529
+ # {
530
+ # overrides: {
531
+ # "String" => {
532
+ # "String" => "String",
533
+ # },
534
+ # },
535
+ # variant_values: {
536
+ # "String" => "String",
537
+ # },
538
+ # },
539
+ # ],
540
+ # },
541
+ # environment_name: "String", # required
542
+ # })
543
+ #
544
+ # @example Response structure
545
+ #
546
+ # resp.entity.app_id #=> String
547
+ # resp.entity.binding_properties #=> Hash
548
+ # resp.entity.binding_properties["String"].binding_properties.bucket #=> String
549
+ # resp.entity.binding_properties["String"].binding_properties.default_value #=> String
550
+ # resp.entity.binding_properties["String"].binding_properties.field #=> String
551
+ # resp.entity.binding_properties["String"].binding_properties.key #=> String
552
+ # resp.entity.binding_properties["String"].binding_properties.model #=> String
553
+ # resp.entity.binding_properties["String"].binding_properties.predicates #=> Array
554
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].and #=> Types::PredicateList
555
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].field #=> String
556
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].operand #=> String
557
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].operator #=> String
558
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].or #=> Types::PredicateList
559
+ # resp.entity.binding_properties["String"].binding_properties.user_attribute #=> String
560
+ # resp.entity.binding_properties["String"].default_value #=> String
561
+ # resp.entity.binding_properties["String"].type #=> String
562
+ # resp.entity.children #=> Array
563
+ # resp.entity.children[0].children #=> Types::ComponentChildList
564
+ # resp.entity.children[0].component_type #=> String
565
+ # resp.entity.children[0].name #=> String
566
+ # resp.entity.children[0].properties #=> Hash
567
+ # resp.entity.children[0].properties["String"].binding_properties.field #=> String
568
+ # resp.entity.children[0].properties["String"].binding_properties.property #=> String
569
+ # resp.entity.children[0].properties["String"].bindings #=> Hash
570
+ # resp.entity.children[0].properties["String"].bindings["String"].element #=> String
571
+ # resp.entity.children[0].properties["String"].bindings["String"].property #=> String
572
+ # resp.entity.children[0].properties["String"].collection_binding_properties.field #=> String
573
+ # resp.entity.children[0].properties["String"].collection_binding_properties.property #=> String
574
+ # resp.entity.children[0].properties["String"].concat #=> Array
575
+ # resp.entity.children[0].properties["String"].concat[0] #=> Types::ComponentProperty
576
+ # resp.entity.children[0].properties["String"].condition.else #=> Types::ComponentProperty
577
+ # resp.entity.children[0].properties["String"].condition.field #=> String
578
+ # resp.entity.children[0].properties["String"].condition.operand #=> String
579
+ # resp.entity.children[0].properties["String"].condition.operator #=> String
580
+ # resp.entity.children[0].properties["String"].condition.property #=> String
581
+ # resp.entity.children[0].properties["String"].condition.then #=> Types::ComponentProperty
582
+ # resp.entity.children[0].properties["String"].configured #=> Boolean
583
+ # resp.entity.children[0].properties["String"].default_value #=> String
584
+ # resp.entity.children[0].properties["String"].event #=> String
585
+ # resp.entity.children[0].properties["String"].imported_value #=> String
586
+ # resp.entity.children[0].properties["String"].model #=> String
587
+ # resp.entity.children[0].properties["String"].type #=> String
588
+ # resp.entity.children[0].properties["String"].user_attribute #=> String
589
+ # resp.entity.children[0].properties["String"].value #=> String
590
+ # resp.entity.collection_properties #=> Hash
591
+ # resp.entity.collection_properties["String"].identifiers #=> Array
592
+ # resp.entity.collection_properties["String"].identifiers[0] #=> String
593
+ # resp.entity.collection_properties["String"].model #=> String
594
+ # resp.entity.collection_properties["String"].predicate.and #=> Array
595
+ # resp.entity.collection_properties["String"].predicate.and[0] #=> Types::Predicate
596
+ # resp.entity.collection_properties["String"].predicate.field #=> String
597
+ # resp.entity.collection_properties["String"].predicate.operand #=> String
598
+ # resp.entity.collection_properties["String"].predicate.operator #=> String
599
+ # resp.entity.collection_properties["String"].predicate.or #=> Array
600
+ # resp.entity.collection_properties["String"].predicate.or[0] #=> Types::Predicate
601
+ # resp.entity.collection_properties["String"].sort #=> Array
602
+ # resp.entity.collection_properties["String"].sort[0].direction #=> String, one of "ASC", "DESC"
603
+ # resp.entity.collection_properties["String"].sort[0].field #=> String
604
+ # resp.entity.component_type #=> String
605
+ # resp.entity.created_at #=> Time
606
+ # resp.entity.environment_name #=> String
607
+ # resp.entity.id #=> String
608
+ # resp.entity.modified_at #=> Time
609
+ # resp.entity.name #=> String
610
+ # resp.entity.overrides #=> Hash
611
+ # resp.entity.overrides["String"] #=> Hash
612
+ # resp.entity.overrides["String"]["String"] #=> String
613
+ # resp.entity.properties #=> Hash
614
+ # resp.entity.properties["String"].binding_properties.field #=> String
615
+ # resp.entity.properties["String"].binding_properties.property #=> String
616
+ # resp.entity.properties["String"].bindings #=> Hash
617
+ # resp.entity.properties["String"].bindings["String"].element #=> String
618
+ # resp.entity.properties["String"].bindings["String"].property #=> String
619
+ # resp.entity.properties["String"].collection_binding_properties.field #=> String
620
+ # resp.entity.properties["String"].collection_binding_properties.property #=> String
621
+ # resp.entity.properties["String"].concat #=> Array
622
+ # resp.entity.properties["String"].concat[0] #=> Types::ComponentProperty
623
+ # resp.entity.properties["String"].condition.else #=> Types::ComponentProperty
624
+ # resp.entity.properties["String"].condition.field #=> String
625
+ # resp.entity.properties["String"].condition.operand #=> String
626
+ # resp.entity.properties["String"].condition.operator #=> String
627
+ # resp.entity.properties["String"].condition.property #=> String
628
+ # resp.entity.properties["String"].condition.then #=> Types::ComponentProperty
629
+ # resp.entity.properties["String"].configured #=> Boolean
630
+ # resp.entity.properties["String"].default_value #=> String
631
+ # resp.entity.properties["String"].event #=> String
632
+ # resp.entity.properties["String"].imported_value #=> String
633
+ # resp.entity.properties["String"].model #=> String
634
+ # resp.entity.properties["String"].type #=> String
635
+ # resp.entity.properties["String"].user_attribute #=> String
636
+ # resp.entity.properties["String"].value #=> String
637
+ # resp.entity.source_id #=> String
638
+ # resp.entity.tags #=> Hash
639
+ # resp.entity.tags["TagKey"] #=> String
640
+ # resp.entity.variants #=> Array
641
+ # resp.entity.variants[0].overrides #=> Hash
642
+ # resp.entity.variants[0].overrides["String"] #=> Hash
643
+ # resp.entity.variants[0].overrides["String"]["String"] #=> String
644
+ # resp.entity.variants[0].variant_values #=> Hash
645
+ # resp.entity.variants[0].variant_values["String"] #=> String
646
+ #
647
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateComponent AWS API Documentation
648
+ #
649
+ # @overload create_component(params = {})
650
+ # @param [Hash] params ({})
651
+ def create_component(params = {}, options = {})
652
+ req = build_request(:create_component, params)
653
+ req.send_request(options)
654
+ end
655
+
656
+ # Creates a theme to apply to the components in an Amplify app.
657
+ #
658
+ # @option params [required, String] :app_id
659
+ # The unique ID of the Amplify app associated with the theme.
660
+ #
661
+ # @option params [String] :client_token
662
+ # The unique client token.
663
+ #
664
+ # **A suitable default value is auto-generated.** You should normally
665
+ # not need to pass this option.**
666
+ #
667
+ # @option params [required, String] :environment_name
668
+ # The name of the backend environment that is a part of the Amplify app.
669
+ #
670
+ # @option params [required, Types::CreateThemeData] :theme_to_create
671
+ # Represents the configuration of the theme to create.
672
+ #
673
+ # @return [Types::CreateThemeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
674
+ #
675
+ # * {Types::CreateThemeResponse#entity #entity} => Types::Theme
676
+ #
677
+ # @example Request syntax with placeholder values
678
+ #
679
+ # resp = client.create_theme({
680
+ # app_id: "String", # required
681
+ # client_token: "String",
682
+ # environment_name: "String", # required
683
+ # theme_to_create: { # required
684
+ # name: "ThemeName", # required
685
+ # overrides: [
686
+ # {
687
+ # key: "String",
688
+ # value: {
689
+ # children: {
690
+ # # recursive ThemeValuesList
691
+ # },
692
+ # value: "String",
693
+ # },
694
+ # },
695
+ # ],
696
+ # tags: {
697
+ # "TagKey" => "TagValue",
698
+ # },
699
+ # values: [ # required
700
+ # {
701
+ # key: "String",
702
+ # value: {
703
+ # children: {
704
+ # # recursive ThemeValuesList
705
+ # },
706
+ # value: "String",
707
+ # },
708
+ # },
709
+ # ],
710
+ # },
711
+ # })
712
+ #
713
+ # @example Response structure
714
+ #
715
+ # resp.entity.app_id #=> String
716
+ # resp.entity.created_at #=> Time
717
+ # resp.entity.environment_name #=> String
718
+ # resp.entity.id #=> String
719
+ # resp.entity.modified_at #=> Time
720
+ # resp.entity.name #=> String
721
+ # resp.entity.overrides #=> Array
722
+ # resp.entity.overrides[0].key #=> String
723
+ # resp.entity.overrides[0].value.children #=> Types::ThemeValuesList
724
+ # resp.entity.overrides[0].value.value #=> String
725
+ # resp.entity.tags #=> Hash
726
+ # resp.entity.tags["TagKey"] #=> String
727
+ # resp.entity.values #=> Array
728
+ # resp.entity.values[0].key #=> String
729
+ # resp.entity.values[0].value.children #=> Types::ThemeValuesList
730
+ # resp.entity.values[0].value.value #=> String
731
+ #
732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/CreateTheme AWS API Documentation
733
+ #
734
+ # @overload create_theme(params = {})
735
+ # @param [Hash] params ({})
736
+ def create_theme(params = {}, options = {})
737
+ req = build_request(:create_theme, params)
738
+ req.send_request(options)
739
+ end
740
+
741
+ # Deletes a component from an Amplify app.
742
+ #
743
+ # @option params [required, String] :app_id
744
+ # The unique ID of the Amplify app associated with the component to
745
+ # delete.
746
+ #
747
+ # @option params [required, String] :environment_name
748
+ # The name of the backend environment that is a part of the Amplify app.
749
+ #
750
+ # @option params [required, String] :id
751
+ # The unique ID of the component to delete.
752
+ #
753
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
754
+ #
755
+ # @example Request syntax with placeholder values
756
+ #
757
+ # resp = client.delete_component({
758
+ # app_id: "String", # required
759
+ # environment_name: "String", # required
760
+ # id: "Uuid", # required
761
+ # })
762
+ #
763
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/DeleteComponent AWS API Documentation
764
+ #
765
+ # @overload delete_component(params = {})
766
+ # @param [Hash] params ({})
767
+ def delete_component(params = {}, options = {})
768
+ req = build_request(:delete_component, params)
769
+ req.send_request(options)
770
+ end
771
+
772
+ # Deletes a theme from an Amplify app.
773
+ #
774
+ # @option params [required, String] :app_id
775
+ # The unique ID of the Amplify app associated with the theme to delete.
776
+ #
777
+ # @option params [required, String] :environment_name
778
+ # The name of the backend environment that is a part of the Amplify app.
779
+ #
780
+ # @option params [required, String] :id
781
+ # The unique ID of the theme to delete.
782
+ #
783
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
784
+ #
785
+ # @example Request syntax with placeholder values
786
+ #
787
+ # resp = client.delete_theme({
788
+ # app_id: "String", # required
789
+ # environment_name: "String", # required
790
+ # id: "Uuid", # required
791
+ # })
792
+ #
793
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/DeleteTheme AWS API Documentation
794
+ #
795
+ # @overload delete_theme(params = {})
796
+ # @param [Hash] params ({})
797
+ def delete_theme(params = {}, options = {})
798
+ req = build_request(:delete_theme, params)
799
+ req.send_request(options)
800
+ end
801
+
802
+ # Exchanges an access code for a token.
803
+ #
804
+ # @option params [required, String] :provider
805
+ # The third-party provider for the token. The only valid value is
806
+ # `figma`.
807
+ #
808
+ # @option params [required, Types::ExchangeCodeForTokenRequestBody] :request
809
+ # Describes the configuration of the request.
810
+ #
811
+ # @return [Types::ExchangeCodeForTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
812
+ #
813
+ # * {Types::ExchangeCodeForTokenResponse#access_token #access_token} => String
814
+ # * {Types::ExchangeCodeForTokenResponse#expires_in #expires_in} => Integer
815
+ # * {Types::ExchangeCodeForTokenResponse#refresh_token #refresh_token} => String
816
+ #
817
+ # @example Request syntax with placeholder values
818
+ #
819
+ # resp = client.exchange_code_for_token({
820
+ # provider: "figma", # required, accepts figma
821
+ # request: { # required
822
+ # code: "SyntheticExchangeCodeForTokenRequestBodyString", # required
823
+ # redirect_uri: "String", # required
824
+ # },
825
+ # })
826
+ #
827
+ # @example Response structure
828
+ #
829
+ # resp.access_token #=> String
830
+ # resp.expires_in #=> Integer
831
+ # resp.refresh_token #=> String
832
+ #
833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExchangeCodeForToken AWS API Documentation
834
+ #
835
+ # @overload exchange_code_for_token(params = {})
836
+ # @param [Hash] params ({})
837
+ def exchange_code_for_token(params = {}, options = {})
838
+ req = build_request(:exchange_code_for_token, params)
839
+ req.send_request(options)
840
+ end
841
+
842
+ # Exports component configurations to code that is ready to integrate
843
+ # into an Amplify app.
844
+ #
845
+ # @option params [required, String] :app_id
846
+ # The unique ID of the Amplify app to export components to.
847
+ #
848
+ # @option params [required, String] :environment_name
849
+ # The name of the backend environment that is a part of the Amplify app.
850
+ #
851
+ # @return [Types::ExportComponentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
852
+ #
853
+ # * {Types::ExportComponentsResponse#entities #entities} => Array&lt;Types::Component&gt;
854
+ #
855
+ # @example Request syntax with placeholder values
856
+ #
857
+ # resp = client.export_components({
858
+ # app_id: "String", # required
859
+ # environment_name: "String", # required
860
+ # })
861
+ #
862
+ # @example Response structure
863
+ #
864
+ # resp.entities #=> Array
865
+ # resp.entities[0].app_id #=> String
866
+ # resp.entities[0].binding_properties #=> Hash
867
+ # resp.entities[0].binding_properties["String"].binding_properties.bucket #=> String
868
+ # resp.entities[0].binding_properties["String"].binding_properties.default_value #=> String
869
+ # resp.entities[0].binding_properties["String"].binding_properties.field #=> String
870
+ # resp.entities[0].binding_properties["String"].binding_properties.key #=> String
871
+ # resp.entities[0].binding_properties["String"].binding_properties.model #=> String
872
+ # resp.entities[0].binding_properties["String"].binding_properties.predicates #=> Array
873
+ # resp.entities[0].binding_properties["String"].binding_properties.predicates[0].and #=> Types::PredicateList
874
+ # resp.entities[0].binding_properties["String"].binding_properties.predicates[0].field #=> String
875
+ # resp.entities[0].binding_properties["String"].binding_properties.predicates[0].operand #=> String
876
+ # resp.entities[0].binding_properties["String"].binding_properties.predicates[0].operator #=> String
877
+ # resp.entities[0].binding_properties["String"].binding_properties.predicates[0].or #=> Types::PredicateList
878
+ # resp.entities[0].binding_properties["String"].binding_properties.user_attribute #=> String
879
+ # resp.entities[0].binding_properties["String"].default_value #=> String
880
+ # resp.entities[0].binding_properties["String"].type #=> String
881
+ # resp.entities[0].children #=> Array
882
+ # resp.entities[0].children[0].children #=> Types::ComponentChildList
883
+ # resp.entities[0].children[0].component_type #=> String
884
+ # resp.entities[0].children[0].name #=> String
885
+ # resp.entities[0].children[0].properties #=> Hash
886
+ # resp.entities[0].children[0].properties["String"].binding_properties.field #=> String
887
+ # resp.entities[0].children[0].properties["String"].binding_properties.property #=> String
888
+ # resp.entities[0].children[0].properties["String"].bindings #=> Hash
889
+ # resp.entities[0].children[0].properties["String"].bindings["String"].element #=> String
890
+ # resp.entities[0].children[0].properties["String"].bindings["String"].property #=> String
891
+ # resp.entities[0].children[0].properties["String"].collection_binding_properties.field #=> String
892
+ # resp.entities[0].children[0].properties["String"].collection_binding_properties.property #=> String
893
+ # resp.entities[0].children[0].properties["String"].concat #=> Array
894
+ # resp.entities[0].children[0].properties["String"].concat[0] #=> Types::ComponentProperty
895
+ # resp.entities[0].children[0].properties["String"].condition.else #=> Types::ComponentProperty
896
+ # resp.entities[0].children[0].properties["String"].condition.field #=> String
897
+ # resp.entities[0].children[0].properties["String"].condition.operand #=> String
898
+ # resp.entities[0].children[0].properties["String"].condition.operator #=> String
899
+ # resp.entities[0].children[0].properties["String"].condition.property #=> String
900
+ # resp.entities[0].children[0].properties["String"].condition.then #=> Types::ComponentProperty
901
+ # resp.entities[0].children[0].properties["String"].configured #=> Boolean
902
+ # resp.entities[0].children[0].properties["String"].default_value #=> String
903
+ # resp.entities[0].children[0].properties["String"].event #=> String
904
+ # resp.entities[0].children[0].properties["String"].imported_value #=> String
905
+ # resp.entities[0].children[0].properties["String"].model #=> String
906
+ # resp.entities[0].children[0].properties["String"].type #=> String
907
+ # resp.entities[0].children[0].properties["String"].user_attribute #=> String
908
+ # resp.entities[0].children[0].properties["String"].value #=> String
909
+ # resp.entities[0].collection_properties #=> Hash
910
+ # resp.entities[0].collection_properties["String"].identifiers #=> Array
911
+ # resp.entities[0].collection_properties["String"].identifiers[0] #=> String
912
+ # resp.entities[0].collection_properties["String"].model #=> String
913
+ # resp.entities[0].collection_properties["String"].predicate.and #=> Array
914
+ # resp.entities[0].collection_properties["String"].predicate.and[0] #=> Types::Predicate
915
+ # resp.entities[0].collection_properties["String"].predicate.field #=> String
916
+ # resp.entities[0].collection_properties["String"].predicate.operand #=> String
917
+ # resp.entities[0].collection_properties["String"].predicate.operator #=> String
918
+ # resp.entities[0].collection_properties["String"].predicate.or #=> Array
919
+ # resp.entities[0].collection_properties["String"].predicate.or[0] #=> Types::Predicate
920
+ # resp.entities[0].collection_properties["String"].sort #=> Array
921
+ # resp.entities[0].collection_properties["String"].sort[0].direction #=> String, one of "ASC", "DESC"
922
+ # resp.entities[0].collection_properties["String"].sort[0].field #=> String
923
+ # resp.entities[0].component_type #=> String
924
+ # resp.entities[0].created_at #=> Time
925
+ # resp.entities[0].environment_name #=> String
926
+ # resp.entities[0].id #=> String
927
+ # resp.entities[0].modified_at #=> Time
928
+ # resp.entities[0].name #=> String
929
+ # resp.entities[0].overrides #=> Hash
930
+ # resp.entities[0].overrides["String"] #=> Hash
931
+ # resp.entities[0].overrides["String"]["String"] #=> String
932
+ # resp.entities[0].properties #=> Hash
933
+ # resp.entities[0].properties["String"].binding_properties.field #=> String
934
+ # resp.entities[0].properties["String"].binding_properties.property #=> String
935
+ # resp.entities[0].properties["String"].bindings #=> Hash
936
+ # resp.entities[0].properties["String"].bindings["String"].element #=> String
937
+ # resp.entities[0].properties["String"].bindings["String"].property #=> String
938
+ # resp.entities[0].properties["String"].collection_binding_properties.field #=> String
939
+ # resp.entities[0].properties["String"].collection_binding_properties.property #=> String
940
+ # resp.entities[0].properties["String"].concat #=> Array
941
+ # resp.entities[0].properties["String"].concat[0] #=> Types::ComponentProperty
942
+ # resp.entities[0].properties["String"].condition.else #=> Types::ComponentProperty
943
+ # resp.entities[0].properties["String"].condition.field #=> String
944
+ # resp.entities[0].properties["String"].condition.operand #=> String
945
+ # resp.entities[0].properties["String"].condition.operator #=> String
946
+ # resp.entities[0].properties["String"].condition.property #=> String
947
+ # resp.entities[0].properties["String"].condition.then #=> Types::ComponentProperty
948
+ # resp.entities[0].properties["String"].configured #=> Boolean
949
+ # resp.entities[0].properties["String"].default_value #=> String
950
+ # resp.entities[0].properties["String"].event #=> String
951
+ # resp.entities[0].properties["String"].imported_value #=> String
952
+ # resp.entities[0].properties["String"].model #=> String
953
+ # resp.entities[0].properties["String"].type #=> String
954
+ # resp.entities[0].properties["String"].user_attribute #=> String
955
+ # resp.entities[0].properties["String"].value #=> String
956
+ # resp.entities[0].source_id #=> String
957
+ # resp.entities[0].tags #=> Hash
958
+ # resp.entities[0].tags["TagKey"] #=> String
959
+ # resp.entities[0].variants #=> Array
960
+ # resp.entities[0].variants[0].overrides #=> Hash
961
+ # resp.entities[0].variants[0].overrides["String"] #=> Hash
962
+ # resp.entities[0].variants[0].overrides["String"]["String"] #=> String
963
+ # resp.entities[0].variants[0].variant_values #=> Hash
964
+ # resp.entities[0].variants[0].variant_values["String"] #=> String
965
+ #
966
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExportComponents AWS API Documentation
967
+ #
968
+ # @overload export_components(params = {})
969
+ # @param [Hash] params ({})
970
+ def export_components(params = {}, options = {})
971
+ req = build_request(:export_components, params)
972
+ req.send_request(options)
973
+ end
974
+
975
+ # Exports theme configurations to code that is ready to integrate into
976
+ # an Amplify app.
977
+ #
978
+ # @option params [required, String] :app_id
979
+ # The unique ID of the Amplify app to export the themes to.
980
+ #
981
+ # @option params [required, String] :environment_name
982
+ # The name of the backend environment that is part of the Amplify app.
983
+ #
984
+ # @return [Types::ExportThemesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
985
+ #
986
+ # * {Types::ExportThemesResponse#entities #entities} => Array&lt;Types::Theme&gt;
987
+ #
988
+ # @example Request syntax with placeholder values
989
+ #
990
+ # resp = client.export_themes({
991
+ # app_id: "String", # required
992
+ # environment_name: "String", # required
993
+ # })
994
+ #
995
+ # @example Response structure
996
+ #
997
+ # resp.entities #=> Array
998
+ # resp.entities[0].app_id #=> String
999
+ # resp.entities[0].created_at #=> Time
1000
+ # resp.entities[0].environment_name #=> String
1001
+ # resp.entities[0].id #=> String
1002
+ # resp.entities[0].modified_at #=> Time
1003
+ # resp.entities[0].name #=> String
1004
+ # resp.entities[0].overrides #=> Array
1005
+ # resp.entities[0].overrides[0].key #=> String
1006
+ # resp.entities[0].overrides[0].value.children #=> Types::ThemeValuesList
1007
+ # resp.entities[0].overrides[0].value.value #=> String
1008
+ # resp.entities[0].tags #=> Hash
1009
+ # resp.entities[0].tags["TagKey"] #=> String
1010
+ # resp.entities[0].values #=> Array
1011
+ # resp.entities[0].values[0].key #=> String
1012
+ # resp.entities[0].values[0].value.children #=> Types::ThemeValuesList
1013
+ # resp.entities[0].values[0].value.value #=> String
1014
+ #
1015
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ExportThemes AWS API Documentation
1016
+ #
1017
+ # @overload export_themes(params = {})
1018
+ # @param [Hash] params ({})
1019
+ def export_themes(params = {}, options = {})
1020
+ req = build_request(:export_themes, params)
1021
+ req.send_request(options)
1022
+ end
1023
+
1024
+ # Returns an existing component for an Amplify app.
1025
+ #
1026
+ # @option params [required, String] :app_id
1027
+ # The unique ID of the Amplify app.
1028
+ #
1029
+ # @option params [required, String] :environment_name
1030
+ # The name of the backend environment that is part of the Amplify app.
1031
+ #
1032
+ # @option params [required, String] :id
1033
+ # The unique ID of the component.
1034
+ #
1035
+ # @return [Types::GetComponentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1036
+ #
1037
+ # * {Types::GetComponentResponse#component #component} => Types::Component
1038
+ #
1039
+ # @example Request syntax with placeholder values
1040
+ #
1041
+ # resp = client.get_component({
1042
+ # app_id: "String", # required
1043
+ # environment_name: "String", # required
1044
+ # id: "Uuid", # required
1045
+ # })
1046
+ #
1047
+ # @example Response structure
1048
+ #
1049
+ # resp.component.app_id #=> String
1050
+ # resp.component.binding_properties #=> Hash
1051
+ # resp.component.binding_properties["String"].binding_properties.bucket #=> String
1052
+ # resp.component.binding_properties["String"].binding_properties.default_value #=> String
1053
+ # resp.component.binding_properties["String"].binding_properties.field #=> String
1054
+ # resp.component.binding_properties["String"].binding_properties.key #=> String
1055
+ # resp.component.binding_properties["String"].binding_properties.model #=> String
1056
+ # resp.component.binding_properties["String"].binding_properties.predicates #=> Array
1057
+ # resp.component.binding_properties["String"].binding_properties.predicates[0].and #=> Types::PredicateList
1058
+ # resp.component.binding_properties["String"].binding_properties.predicates[0].field #=> String
1059
+ # resp.component.binding_properties["String"].binding_properties.predicates[0].operand #=> String
1060
+ # resp.component.binding_properties["String"].binding_properties.predicates[0].operator #=> String
1061
+ # resp.component.binding_properties["String"].binding_properties.predicates[0].or #=> Types::PredicateList
1062
+ # resp.component.binding_properties["String"].binding_properties.user_attribute #=> String
1063
+ # resp.component.binding_properties["String"].default_value #=> String
1064
+ # resp.component.binding_properties["String"].type #=> String
1065
+ # resp.component.children #=> Array
1066
+ # resp.component.children[0].children #=> Types::ComponentChildList
1067
+ # resp.component.children[0].component_type #=> String
1068
+ # resp.component.children[0].name #=> String
1069
+ # resp.component.children[0].properties #=> Hash
1070
+ # resp.component.children[0].properties["String"].binding_properties.field #=> String
1071
+ # resp.component.children[0].properties["String"].binding_properties.property #=> String
1072
+ # resp.component.children[0].properties["String"].bindings #=> Hash
1073
+ # resp.component.children[0].properties["String"].bindings["String"].element #=> String
1074
+ # resp.component.children[0].properties["String"].bindings["String"].property #=> String
1075
+ # resp.component.children[0].properties["String"].collection_binding_properties.field #=> String
1076
+ # resp.component.children[0].properties["String"].collection_binding_properties.property #=> String
1077
+ # resp.component.children[0].properties["String"].concat #=> Array
1078
+ # resp.component.children[0].properties["String"].concat[0] #=> Types::ComponentProperty
1079
+ # resp.component.children[0].properties["String"].condition.else #=> Types::ComponentProperty
1080
+ # resp.component.children[0].properties["String"].condition.field #=> String
1081
+ # resp.component.children[0].properties["String"].condition.operand #=> String
1082
+ # resp.component.children[0].properties["String"].condition.operator #=> String
1083
+ # resp.component.children[0].properties["String"].condition.property #=> String
1084
+ # resp.component.children[0].properties["String"].condition.then #=> Types::ComponentProperty
1085
+ # resp.component.children[0].properties["String"].configured #=> Boolean
1086
+ # resp.component.children[0].properties["String"].default_value #=> String
1087
+ # resp.component.children[0].properties["String"].event #=> String
1088
+ # resp.component.children[0].properties["String"].imported_value #=> String
1089
+ # resp.component.children[0].properties["String"].model #=> String
1090
+ # resp.component.children[0].properties["String"].type #=> String
1091
+ # resp.component.children[0].properties["String"].user_attribute #=> String
1092
+ # resp.component.children[0].properties["String"].value #=> String
1093
+ # resp.component.collection_properties #=> Hash
1094
+ # resp.component.collection_properties["String"].identifiers #=> Array
1095
+ # resp.component.collection_properties["String"].identifiers[0] #=> String
1096
+ # resp.component.collection_properties["String"].model #=> String
1097
+ # resp.component.collection_properties["String"].predicate.and #=> Array
1098
+ # resp.component.collection_properties["String"].predicate.and[0] #=> Types::Predicate
1099
+ # resp.component.collection_properties["String"].predicate.field #=> String
1100
+ # resp.component.collection_properties["String"].predicate.operand #=> String
1101
+ # resp.component.collection_properties["String"].predicate.operator #=> String
1102
+ # resp.component.collection_properties["String"].predicate.or #=> Array
1103
+ # resp.component.collection_properties["String"].predicate.or[0] #=> Types::Predicate
1104
+ # resp.component.collection_properties["String"].sort #=> Array
1105
+ # resp.component.collection_properties["String"].sort[0].direction #=> String, one of "ASC", "DESC"
1106
+ # resp.component.collection_properties["String"].sort[0].field #=> String
1107
+ # resp.component.component_type #=> String
1108
+ # resp.component.created_at #=> Time
1109
+ # resp.component.environment_name #=> String
1110
+ # resp.component.id #=> String
1111
+ # resp.component.modified_at #=> Time
1112
+ # resp.component.name #=> String
1113
+ # resp.component.overrides #=> Hash
1114
+ # resp.component.overrides["String"] #=> Hash
1115
+ # resp.component.overrides["String"]["String"] #=> String
1116
+ # resp.component.properties #=> Hash
1117
+ # resp.component.properties["String"].binding_properties.field #=> String
1118
+ # resp.component.properties["String"].binding_properties.property #=> String
1119
+ # resp.component.properties["String"].bindings #=> Hash
1120
+ # resp.component.properties["String"].bindings["String"].element #=> String
1121
+ # resp.component.properties["String"].bindings["String"].property #=> String
1122
+ # resp.component.properties["String"].collection_binding_properties.field #=> String
1123
+ # resp.component.properties["String"].collection_binding_properties.property #=> String
1124
+ # resp.component.properties["String"].concat #=> Array
1125
+ # resp.component.properties["String"].concat[0] #=> Types::ComponentProperty
1126
+ # resp.component.properties["String"].condition.else #=> Types::ComponentProperty
1127
+ # resp.component.properties["String"].condition.field #=> String
1128
+ # resp.component.properties["String"].condition.operand #=> String
1129
+ # resp.component.properties["String"].condition.operator #=> String
1130
+ # resp.component.properties["String"].condition.property #=> String
1131
+ # resp.component.properties["String"].condition.then #=> Types::ComponentProperty
1132
+ # resp.component.properties["String"].configured #=> Boolean
1133
+ # resp.component.properties["String"].default_value #=> String
1134
+ # resp.component.properties["String"].event #=> String
1135
+ # resp.component.properties["String"].imported_value #=> String
1136
+ # resp.component.properties["String"].model #=> String
1137
+ # resp.component.properties["String"].type #=> String
1138
+ # resp.component.properties["String"].user_attribute #=> String
1139
+ # resp.component.properties["String"].value #=> String
1140
+ # resp.component.source_id #=> String
1141
+ # resp.component.tags #=> Hash
1142
+ # resp.component.tags["TagKey"] #=> String
1143
+ # resp.component.variants #=> Array
1144
+ # resp.component.variants[0].overrides #=> Hash
1145
+ # resp.component.variants[0].overrides["String"] #=> Hash
1146
+ # resp.component.variants[0].overrides["String"]["String"] #=> String
1147
+ # resp.component.variants[0].variant_values #=> Hash
1148
+ # resp.component.variants[0].variant_values["String"] #=> String
1149
+ #
1150
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/GetComponent AWS API Documentation
1151
+ #
1152
+ # @overload get_component(params = {})
1153
+ # @param [Hash] params ({})
1154
+ def get_component(params = {}, options = {})
1155
+ req = build_request(:get_component, params)
1156
+ req.send_request(options)
1157
+ end
1158
+
1159
+ # Returns an existing theme for an Amplify app.
1160
+ #
1161
+ # @option params [required, String] :app_id
1162
+ # The unique ID of the Amplify app.
1163
+ #
1164
+ # @option params [required, String] :environment_name
1165
+ # The name of the backend environment that is part of the Amplify app.
1166
+ #
1167
+ # @option params [required, String] :id
1168
+ # The unique ID for the theme.
1169
+ #
1170
+ # @return [Types::GetThemeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1171
+ #
1172
+ # * {Types::GetThemeResponse#theme #theme} => Types::Theme
1173
+ #
1174
+ # @example Request syntax with placeholder values
1175
+ #
1176
+ # resp = client.get_theme({
1177
+ # app_id: "String", # required
1178
+ # environment_name: "String", # required
1179
+ # id: "Uuid", # required
1180
+ # })
1181
+ #
1182
+ # @example Response structure
1183
+ #
1184
+ # resp.theme.app_id #=> String
1185
+ # resp.theme.created_at #=> Time
1186
+ # resp.theme.environment_name #=> String
1187
+ # resp.theme.id #=> String
1188
+ # resp.theme.modified_at #=> Time
1189
+ # resp.theme.name #=> String
1190
+ # resp.theme.overrides #=> Array
1191
+ # resp.theme.overrides[0].key #=> String
1192
+ # resp.theme.overrides[0].value.children #=> Types::ThemeValuesList
1193
+ # resp.theme.overrides[0].value.value #=> String
1194
+ # resp.theme.tags #=> Hash
1195
+ # resp.theme.tags["TagKey"] #=> String
1196
+ # resp.theme.values #=> Array
1197
+ # resp.theme.values[0].key #=> String
1198
+ # resp.theme.values[0].value.children #=> Types::ThemeValuesList
1199
+ # resp.theme.values[0].value.value #=> String
1200
+ #
1201
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/GetTheme AWS API Documentation
1202
+ #
1203
+ # @overload get_theme(params = {})
1204
+ # @param [Hash] params ({})
1205
+ def get_theme(params = {}, options = {})
1206
+ req = build_request(:get_theme, params)
1207
+ req.send_request(options)
1208
+ end
1209
+
1210
+ # Retrieves a list of components for a specified Amplify app and backend
1211
+ # environment.
1212
+ #
1213
+ # @option params [required, String] :app_id
1214
+ # The unique ID for the Amplify app.
1215
+ #
1216
+ # @option params [required, String] :environment_name
1217
+ # The name of the backend environment that is a part of the Amplify app.
1218
+ #
1219
+ # @option params [Integer] :max_results
1220
+ # The maximum number of components to retrieve.
1221
+ #
1222
+ # @option params [String] :next_token
1223
+ # The token to request the next page of results.
1224
+ #
1225
+ # @return [Types::ListComponentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1226
+ #
1227
+ # * {Types::ListComponentsResponse#entities #entities} => Array&lt;Types::ComponentSummary&gt;
1228
+ # * {Types::ListComponentsResponse#next_token #next_token} => String
1229
+ #
1230
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1231
+ #
1232
+ # @example Request syntax with placeholder values
1233
+ #
1234
+ # resp = client.list_components({
1235
+ # app_id: "String", # required
1236
+ # environment_name: "String", # required
1237
+ # max_results: 1,
1238
+ # next_token: "String",
1239
+ # })
1240
+ #
1241
+ # @example Response structure
1242
+ #
1243
+ # resp.entities #=> Array
1244
+ # resp.entities[0].app_id #=> String
1245
+ # resp.entities[0].component_type #=> String
1246
+ # resp.entities[0].environment_name #=> String
1247
+ # resp.entities[0].id #=> String
1248
+ # resp.entities[0].name #=> String
1249
+ # resp.next_token #=> String
1250
+ #
1251
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListComponents AWS API Documentation
1252
+ #
1253
+ # @overload list_components(params = {})
1254
+ # @param [Hash] params ({})
1255
+ def list_components(params = {}, options = {})
1256
+ req = build_request(:list_components, params)
1257
+ req.send_request(options)
1258
+ end
1259
+
1260
+ # Retrieves a list of themes for a specified Amplify app and backend
1261
+ # environment.
1262
+ #
1263
+ # @option params [required, String] :app_id
1264
+ # The unique ID for the Amplify app.
1265
+ #
1266
+ # @option params [required, String] :environment_name
1267
+ # The name of the backend environment that is a part of the Amplify app.
1268
+ #
1269
+ # @option params [Integer] :max_results
1270
+ # The maximum number of theme results to return in the response.
1271
+ #
1272
+ # @option params [String] :next_token
1273
+ # The token to request the next page of results.
1274
+ #
1275
+ # @return [Types::ListThemesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1276
+ #
1277
+ # * {Types::ListThemesResponse#entities #entities} => Array&lt;Types::ThemeSummary&gt;
1278
+ # * {Types::ListThemesResponse#next_token #next_token} => String
1279
+ #
1280
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1281
+ #
1282
+ # @example Request syntax with placeholder values
1283
+ #
1284
+ # resp = client.list_themes({
1285
+ # app_id: "String", # required
1286
+ # environment_name: "String", # required
1287
+ # max_results: 1,
1288
+ # next_token: "String",
1289
+ # })
1290
+ #
1291
+ # @example Response structure
1292
+ #
1293
+ # resp.entities #=> Array
1294
+ # resp.entities[0].app_id #=> String
1295
+ # resp.entities[0].environment_name #=> String
1296
+ # resp.entities[0].id #=> String
1297
+ # resp.entities[0].name #=> String
1298
+ # resp.next_token #=> String
1299
+ #
1300
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/ListThemes AWS API Documentation
1301
+ #
1302
+ # @overload list_themes(params = {})
1303
+ # @param [Hash] params ({})
1304
+ def list_themes(params = {}, options = {})
1305
+ req = build_request(:list_themes, params)
1306
+ req.send_request(options)
1307
+ end
1308
+
1309
+ # Refreshes a previously issued access token that might have expired.
1310
+ #
1311
+ # @option params [required, String] :provider
1312
+ # The third-party provider for the token. The only valid value is
1313
+ # `figma`.
1314
+ #
1315
+ # @option params [required, Types::RefreshTokenRequestBody] :refresh_token_body
1316
+ # Information about the refresh token request.
1317
+ #
1318
+ # @return [Types::RefreshTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1319
+ #
1320
+ # * {Types::RefreshTokenResponse#access_token #access_token} => String
1321
+ # * {Types::RefreshTokenResponse#expires_in #expires_in} => Integer
1322
+ #
1323
+ # @example Request syntax with placeholder values
1324
+ #
1325
+ # resp = client.refresh_token({
1326
+ # provider: "figma", # required, accepts figma
1327
+ # refresh_token_body: { # required
1328
+ # token: "SyntheticRefreshTokenRequestBodyString", # required
1329
+ # },
1330
+ # })
1331
+ #
1332
+ # @example Response structure
1333
+ #
1334
+ # resp.access_token #=> String
1335
+ # resp.expires_in #=> Integer
1336
+ #
1337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/RefreshToken AWS API Documentation
1338
+ #
1339
+ # @overload refresh_token(params = {})
1340
+ # @param [Hash] params ({})
1341
+ def refresh_token(params = {}, options = {})
1342
+ req = build_request(:refresh_token, params)
1343
+ req.send_request(options)
1344
+ end
1345
+
1346
+ # Updates an existing component.
1347
+ #
1348
+ # @option params [required, String] :app_id
1349
+ # The unique ID for the Amplify app.
1350
+ #
1351
+ # @option params [String] :client_token
1352
+ # The unique client token.
1353
+ #
1354
+ # **A suitable default value is auto-generated.** You should normally
1355
+ # not need to pass this option.**
1356
+ #
1357
+ # @option params [required, String] :environment_name
1358
+ # The name of the backend environment that is part of the Amplify app.
1359
+ #
1360
+ # @option params [required, String] :id
1361
+ # The unique ID for the component.
1362
+ #
1363
+ # @option params [required, Types::UpdateComponentData] :updated_component
1364
+ # The configuration of the updated component.
1365
+ #
1366
+ # @return [Types::UpdateComponentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1367
+ #
1368
+ # * {Types::UpdateComponentResponse#entity #entity} => Types::Component
1369
+ #
1370
+ # @example Request syntax with placeholder values
1371
+ #
1372
+ # resp = client.update_component({
1373
+ # app_id: "String", # required
1374
+ # client_token: "String",
1375
+ # environment_name: "String", # required
1376
+ # id: "Uuid", # required
1377
+ # updated_component: { # required
1378
+ # binding_properties: {
1379
+ # "String" => {
1380
+ # binding_properties: {
1381
+ # bucket: "String",
1382
+ # default_value: "String",
1383
+ # field: "String",
1384
+ # key: "String",
1385
+ # model: "String",
1386
+ # predicates: [
1387
+ # {
1388
+ # and: {
1389
+ # # recursive PredicateList
1390
+ # },
1391
+ # field: "String",
1392
+ # operand: "String",
1393
+ # operator: "String",
1394
+ # or: {
1395
+ # # recursive PredicateList
1396
+ # },
1397
+ # },
1398
+ # ],
1399
+ # user_attribute: "String",
1400
+ # },
1401
+ # default_value: "String",
1402
+ # type: "String",
1403
+ # },
1404
+ # },
1405
+ # children: [
1406
+ # {
1407
+ # children: {
1408
+ # # recursive ComponentChildList
1409
+ # },
1410
+ # component_type: "String", # required
1411
+ # name: "String", # required
1412
+ # properties: { # required
1413
+ # "String" => {
1414
+ # binding_properties: {
1415
+ # field: "String",
1416
+ # property: "String", # required
1417
+ # },
1418
+ # bindings: {
1419
+ # "String" => {
1420
+ # element: "String", # required
1421
+ # property: "String", # required
1422
+ # },
1423
+ # },
1424
+ # collection_binding_properties: {
1425
+ # field: "String",
1426
+ # property: "String", # required
1427
+ # },
1428
+ # concat: [
1429
+ # {
1430
+ # # recursive ComponentProperty
1431
+ # },
1432
+ # ],
1433
+ # condition: {
1434
+ # else: {
1435
+ # # recursive ComponentProperty
1436
+ # },
1437
+ # field: "String",
1438
+ # operand: "String",
1439
+ # operator: "String",
1440
+ # property: "String",
1441
+ # then: {
1442
+ # # recursive ComponentProperty
1443
+ # },
1444
+ # },
1445
+ # configured: false,
1446
+ # default_value: "String",
1447
+ # event: "String",
1448
+ # imported_value: "String",
1449
+ # model: "String",
1450
+ # type: "String",
1451
+ # user_attribute: "String",
1452
+ # value: "String",
1453
+ # },
1454
+ # },
1455
+ # },
1456
+ # ],
1457
+ # collection_properties: {
1458
+ # "String" => {
1459
+ # identifiers: ["String"],
1460
+ # model: "String", # required
1461
+ # predicate: {
1462
+ # and: [
1463
+ # {
1464
+ # # recursive Predicate
1465
+ # },
1466
+ # ],
1467
+ # field: "String",
1468
+ # operand: "String",
1469
+ # operator: "String",
1470
+ # or: [
1471
+ # {
1472
+ # # recursive Predicate
1473
+ # },
1474
+ # ],
1475
+ # },
1476
+ # sort: [
1477
+ # {
1478
+ # direction: "ASC", # required, accepts ASC, DESC
1479
+ # field: "String", # required
1480
+ # },
1481
+ # ],
1482
+ # },
1483
+ # },
1484
+ # component_type: "ComponentType",
1485
+ # id: "Uuid",
1486
+ # name: "ComponentName",
1487
+ # overrides: {
1488
+ # "String" => {
1489
+ # "String" => "String",
1490
+ # },
1491
+ # },
1492
+ # properties: {
1493
+ # "String" => {
1494
+ # binding_properties: {
1495
+ # field: "String",
1496
+ # property: "String", # required
1497
+ # },
1498
+ # bindings: {
1499
+ # "String" => {
1500
+ # element: "String", # required
1501
+ # property: "String", # required
1502
+ # },
1503
+ # },
1504
+ # collection_binding_properties: {
1505
+ # field: "String",
1506
+ # property: "String", # required
1507
+ # },
1508
+ # concat: [
1509
+ # {
1510
+ # # recursive ComponentProperty
1511
+ # },
1512
+ # ],
1513
+ # condition: {
1514
+ # else: {
1515
+ # # recursive ComponentProperty
1516
+ # },
1517
+ # field: "String",
1518
+ # operand: "String",
1519
+ # operator: "String",
1520
+ # property: "String",
1521
+ # then: {
1522
+ # # recursive ComponentProperty
1523
+ # },
1524
+ # },
1525
+ # configured: false,
1526
+ # default_value: "String",
1527
+ # event: "String",
1528
+ # imported_value: "String",
1529
+ # model: "String",
1530
+ # type: "String",
1531
+ # user_attribute: "String",
1532
+ # value: "String",
1533
+ # },
1534
+ # },
1535
+ # source_id: "String",
1536
+ # variants: [
1537
+ # {
1538
+ # overrides: {
1539
+ # "String" => {
1540
+ # "String" => "String",
1541
+ # },
1542
+ # },
1543
+ # variant_values: {
1544
+ # "String" => "String",
1545
+ # },
1546
+ # },
1547
+ # ],
1548
+ # },
1549
+ # })
1550
+ #
1551
+ # @example Response structure
1552
+ #
1553
+ # resp.entity.app_id #=> String
1554
+ # resp.entity.binding_properties #=> Hash
1555
+ # resp.entity.binding_properties["String"].binding_properties.bucket #=> String
1556
+ # resp.entity.binding_properties["String"].binding_properties.default_value #=> String
1557
+ # resp.entity.binding_properties["String"].binding_properties.field #=> String
1558
+ # resp.entity.binding_properties["String"].binding_properties.key #=> String
1559
+ # resp.entity.binding_properties["String"].binding_properties.model #=> String
1560
+ # resp.entity.binding_properties["String"].binding_properties.predicates #=> Array
1561
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].and #=> Types::PredicateList
1562
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].field #=> String
1563
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].operand #=> String
1564
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].operator #=> String
1565
+ # resp.entity.binding_properties["String"].binding_properties.predicates[0].or #=> Types::PredicateList
1566
+ # resp.entity.binding_properties["String"].binding_properties.user_attribute #=> String
1567
+ # resp.entity.binding_properties["String"].default_value #=> String
1568
+ # resp.entity.binding_properties["String"].type #=> String
1569
+ # resp.entity.children #=> Array
1570
+ # resp.entity.children[0].children #=> Types::ComponentChildList
1571
+ # resp.entity.children[0].component_type #=> String
1572
+ # resp.entity.children[0].name #=> String
1573
+ # resp.entity.children[0].properties #=> Hash
1574
+ # resp.entity.children[0].properties["String"].binding_properties.field #=> String
1575
+ # resp.entity.children[0].properties["String"].binding_properties.property #=> String
1576
+ # resp.entity.children[0].properties["String"].bindings #=> Hash
1577
+ # resp.entity.children[0].properties["String"].bindings["String"].element #=> String
1578
+ # resp.entity.children[0].properties["String"].bindings["String"].property #=> String
1579
+ # resp.entity.children[0].properties["String"].collection_binding_properties.field #=> String
1580
+ # resp.entity.children[0].properties["String"].collection_binding_properties.property #=> String
1581
+ # resp.entity.children[0].properties["String"].concat #=> Array
1582
+ # resp.entity.children[0].properties["String"].concat[0] #=> Types::ComponentProperty
1583
+ # resp.entity.children[0].properties["String"].condition.else #=> Types::ComponentProperty
1584
+ # resp.entity.children[0].properties["String"].condition.field #=> String
1585
+ # resp.entity.children[0].properties["String"].condition.operand #=> String
1586
+ # resp.entity.children[0].properties["String"].condition.operator #=> String
1587
+ # resp.entity.children[0].properties["String"].condition.property #=> String
1588
+ # resp.entity.children[0].properties["String"].condition.then #=> Types::ComponentProperty
1589
+ # resp.entity.children[0].properties["String"].configured #=> Boolean
1590
+ # resp.entity.children[0].properties["String"].default_value #=> String
1591
+ # resp.entity.children[0].properties["String"].event #=> String
1592
+ # resp.entity.children[0].properties["String"].imported_value #=> String
1593
+ # resp.entity.children[0].properties["String"].model #=> String
1594
+ # resp.entity.children[0].properties["String"].type #=> String
1595
+ # resp.entity.children[0].properties["String"].user_attribute #=> String
1596
+ # resp.entity.children[0].properties["String"].value #=> String
1597
+ # resp.entity.collection_properties #=> Hash
1598
+ # resp.entity.collection_properties["String"].identifiers #=> Array
1599
+ # resp.entity.collection_properties["String"].identifiers[0] #=> String
1600
+ # resp.entity.collection_properties["String"].model #=> String
1601
+ # resp.entity.collection_properties["String"].predicate.and #=> Array
1602
+ # resp.entity.collection_properties["String"].predicate.and[0] #=> Types::Predicate
1603
+ # resp.entity.collection_properties["String"].predicate.field #=> String
1604
+ # resp.entity.collection_properties["String"].predicate.operand #=> String
1605
+ # resp.entity.collection_properties["String"].predicate.operator #=> String
1606
+ # resp.entity.collection_properties["String"].predicate.or #=> Array
1607
+ # resp.entity.collection_properties["String"].predicate.or[0] #=> Types::Predicate
1608
+ # resp.entity.collection_properties["String"].sort #=> Array
1609
+ # resp.entity.collection_properties["String"].sort[0].direction #=> String, one of "ASC", "DESC"
1610
+ # resp.entity.collection_properties["String"].sort[0].field #=> String
1611
+ # resp.entity.component_type #=> String
1612
+ # resp.entity.created_at #=> Time
1613
+ # resp.entity.environment_name #=> String
1614
+ # resp.entity.id #=> String
1615
+ # resp.entity.modified_at #=> Time
1616
+ # resp.entity.name #=> String
1617
+ # resp.entity.overrides #=> Hash
1618
+ # resp.entity.overrides["String"] #=> Hash
1619
+ # resp.entity.overrides["String"]["String"] #=> String
1620
+ # resp.entity.properties #=> Hash
1621
+ # resp.entity.properties["String"].binding_properties.field #=> String
1622
+ # resp.entity.properties["String"].binding_properties.property #=> String
1623
+ # resp.entity.properties["String"].bindings #=> Hash
1624
+ # resp.entity.properties["String"].bindings["String"].element #=> String
1625
+ # resp.entity.properties["String"].bindings["String"].property #=> String
1626
+ # resp.entity.properties["String"].collection_binding_properties.field #=> String
1627
+ # resp.entity.properties["String"].collection_binding_properties.property #=> String
1628
+ # resp.entity.properties["String"].concat #=> Array
1629
+ # resp.entity.properties["String"].concat[0] #=> Types::ComponentProperty
1630
+ # resp.entity.properties["String"].condition.else #=> Types::ComponentProperty
1631
+ # resp.entity.properties["String"].condition.field #=> String
1632
+ # resp.entity.properties["String"].condition.operand #=> String
1633
+ # resp.entity.properties["String"].condition.operator #=> String
1634
+ # resp.entity.properties["String"].condition.property #=> String
1635
+ # resp.entity.properties["String"].condition.then #=> Types::ComponentProperty
1636
+ # resp.entity.properties["String"].configured #=> Boolean
1637
+ # resp.entity.properties["String"].default_value #=> String
1638
+ # resp.entity.properties["String"].event #=> String
1639
+ # resp.entity.properties["String"].imported_value #=> String
1640
+ # resp.entity.properties["String"].model #=> String
1641
+ # resp.entity.properties["String"].type #=> String
1642
+ # resp.entity.properties["String"].user_attribute #=> String
1643
+ # resp.entity.properties["String"].value #=> String
1644
+ # resp.entity.source_id #=> String
1645
+ # resp.entity.tags #=> Hash
1646
+ # resp.entity.tags["TagKey"] #=> String
1647
+ # resp.entity.variants #=> Array
1648
+ # resp.entity.variants[0].overrides #=> Hash
1649
+ # resp.entity.variants[0].overrides["String"] #=> Hash
1650
+ # resp.entity.variants[0].overrides["String"]["String"] #=> String
1651
+ # resp.entity.variants[0].variant_values #=> Hash
1652
+ # resp.entity.variants[0].variant_values["String"] #=> String
1653
+ #
1654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateComponent AWS API Documentation
1655
+ #
1656
+ # @overload update_component(params = {})
1657
+ # @param [Hash] params ({})
1658
+ def update_component(params = {}, options = {})
1659
+ req = build_request(:update_component, params)
1660
+ req.send_request(options)
1661
+ end
1662
+
1663
+ # Updates an existing theme.
1664
+ #
1665
+ # @option params [required, String] :app_id
1666
+ # The unique ID for the Amplify app.
1667
+ #
1668
+ # @option params [String] :client_token
1669
+ # The unique client token.
1670
+ #
1671
+ # **A suitable default value is auto-generated.** You should normally
1672
+ # not need to pass this option.**
1673
+ #
1674
+ # @option params [required, String] :environment_name
1675
+ # The name of the backend environment that is part of the Amplify app.
1676
+ #
1677
+ # @option params [required, String] :id
1678
+ # The unique ID for the theme.
1679
+ #
1680
+ # @option params [required, Types::UpdateThemeData] :updated_theme
1681
+ # The configuration of the updated theme.
1682
+ #
1683
+ # @return [Types::UpdateThemeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1684
+ #
1685
+ # * {Types::UpdateThemeResponse#entity #entity} => Types::Theme
1686
+ #
1687
+ # @example Request syntax with placeholder values
1688
+ #
1689
+ # resp = client.update_theme({
1690
+ # app_id: "String", # required
1691
+ # client_token: "String",
1692
+ # environment_name: "String", # required
1693
+ # id: "Uuid", # required
1694
+ # updated_theme: { # required
1695
+ # id: "Uuid",
1696
+ # name: "ThemeName",
1697
+ # overrides: [
1698
+ # {
1699
+ # key: "String",
1700
+ # value: {
1701
+ # children: {
1702
+ # # recursive ThemeValuesList
1703
+ # },
1704
+ # value: "String",
1705
+ # },
1706
+ # },
1707
+ # ],
1708
+ # values: [ # required
1709
+ # {
1710
+ # key: "String",
1711
+ # value: {
1712
+ # children: {
1713
+ # # recursive ThemeValuesList
1714
+ # },
1715
+ # value: "String",
1716
+ # },
1717
+ # },
1718
+ # ],
1719
+ # },
1720
+ # })
1721
+ #
1722
+ # @example Response structure
1723
+ #
1724
+ # resp.entity.app_id #=> String
1725
+ # resp.entity.created_at #=> Time
1726
+ # resp.entity.environment_name #=> String
1727
+ # resp.entity.id #=> String
1728
+ # resp.entity.modified_at #=> Time
1729
+ # resp.entity.name #=> String
1730
+ # resp.entity.overrides #=> Array
1731
+ # resp.entity.overrides[0].key #=> String
1732
+ # resp.entity.overrides[0].value.children #=> Types::ThemeValuesList
1733
+ # resp.entity.overrides[0].value.value #=> String
1734
+ # resp.entity.tags #=> Hash
1735
+ # resp.entity.tags["TagKey"] #=> String
1736
+ # resp.entity.values #=> Array
1737
+ # resp.entity.values[0].key #=> String
1738
+ # resp.entity.values[0].value.children #=> Types::ThemeValuesList
1739
+ # resp.entity.values[0].value.value #=> String
1740
+ #
1741
+ # @see http://docs.aws.amazon.com/goto/WebAPI/amplifyuibuilder-2021-08-11/UpdateTheme AWS API Documentation
1742
+ #
1743
+ # @overload update_theme(params = {})
1744
+ # @param [Hash] params ({})
1745
+ def update_theme(params = {}, options = {})
1746
+ req = build_request(:update_theme, params)
1747
+ req.send_request(options)
1748
+ end
1749
+
1750
+ # @!endgroup
1751
+
1752
+ # @param params ({})
1753
+ # @api private
1754
+ def build_request(operation_name, params = {})
1755
+ handlers = @handlers.for(operation_name)
1756
+ context = Seahorse::Client::RequestContext.new(
1757
+ operation_name: operation_name,
1758
+ operation: config.api.operation(operation_name),
1759
+ client: self,
1760
+ params: params,
1761
+ config: config)
1762
+ context[:gem_name] = 'aws-sdk-amplifyuibuilder'
1763
+ context[:gem_version] = '1.0.0'
1764
+ Seahorse::Client::Request.new(handlers, context)
1765
+ end
1766
+
1767
+ # @api private
1768
+ # @deprecated
1769
+ def waiter_names
1770
+ []
1771
+ end
1772
+
1773
+ class << self
1774
+
1775
+ # @api private
1776
+ attr_reader :identifier
1777
+
1778
+ # @api private
1779
+ def errors_module
1780
+ Errors
1781
+ end
1782
+
1783
+ end
1784
+ end
1785
+ end