// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateIAMPolicyAssignment`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`aws_account_id(impl Into<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::aws_account_id) / [`set_aws_account_id(Option<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::set_aws_account_id):<br>required: **true**<br><p>The ID of the Amazon Web Services account where you want to assign an IAM policy to Amazon QuickSight users or groups.</p><br>
/// - [`assignment_name(impl Into<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::assignment_name) / [`set_assignment_name(Option<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::set_assignment_name):<br>required: **true**<br><p>The name of the assignment, also called a rule. The name must be unique within the Amazon Web Services account.</p><br>
/// - [`assignment_status(AssignmentStatus)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::assignment_status) / [`set_assignment_status(Option<AssignmentStatus>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::set_assignment_status):<br>required: **true**<br><p>The status of the assignment. Possible values are as follows:</p> <ul> <li> <p> <code>ENABLED</code> - Anything specified in this assignment is used when creating the data source.</p> </li> <li> <p> <code>DISABLED</code> - This assignment isn't used when creating the data source.</p> </li> <li> <p> <code>DRAFT</code> - This assignment is an unfinished draft and isn't used when creating the data source.</p> </li> </ul><br>
/// - [`policy_arn(impl Into<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::policy_arn) / [`set_policy_arn(Option<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::set_policy_arn):<br>required: **false**<br><p>The ARN for the IAM policy to apply to the Amazon QuickSight users and groups specified in this assignment.</p><br>
/// - [`identities(impl Into<String>, Vec::<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::identities) / [`set_identities(Option<HashMap::<String, Vec::<String>>>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::set_identities):<br>required: **false**<br><p>The Amazon QuickSight users, groups, or both that you want to assign the policy to.</p><br>
/// - [`namespace(impl Into<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::namespace) / [`set_namespace(Option<String>)`](crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::set_namespace):<br>required: **true**<br><p>The namespace that contains the assignment.</p><br>
/// - On success, responds with [`CreateIamPolicyAssignmentOutput`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput) with field(s):
/// - [`assignment_name(Option<String>)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::assignment_name): <p>The name of the assignment. The name must be unique within the Amazon Web Services account.</p>
/// - [`assignment_id(Option<String>)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::assignment_id): <p>The ID for the assignment.</p>
/// - [`assignment_status(Option<AssignmentStatus>)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::assignment_status): <p>The status of the assignment. Possible values are as follows:</p> <ul> <li> <p> <code>ENABLED</code> - Anything specified in this assignment is used when creating the data source.</p> </li> <li> <p> <code>DISABLED</code> - This assignment isn't used when creating the data source.</p> </li> <li> <p> <code>DRAFT</code> - This assignment is an unfinished draft and isn't used when creating the data source.</p> </li> </ul>
/// - [`policy_arn(Option<String>)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::policy_arn): <p>The ARN for the IAM policy that is applied to the Amazon QuickSight users and groups specified in this assignment.</p>
/// - [`identities(Option<HashMap::<String, Vec::<String>>>)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::identities): <p>The Amazon QuickSight users, groups, or both that the IAM policy is assigned to.</p>
/// - [`request_id(Option<String>)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::request_id): <p>The Amazon Web Services request ID for this operation.</p>
/// - [`status(i32)`](crate::operation::create_iam_policy_assignment::CreateIamPolicyAssignmentOutput::status): <p>The HTTP status of the request.</p>
/// - On failure, responds with [`SdkError<CreateIAMPolicyAssignmentError>`](crate::operation::create_iam_policy_assignment::CreateIAMPolicyAssignmentError)
pub fn create_iam_policy_assignment(&self) -> crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder {
crate::operation::create_iam_policy_assignment::builders::CreateIAMPolicyAssignmentFluentBuilder::new(self.handle.clone())
}
}