// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`PutPublicAccessBlockConfig`](crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`resource_arn(impl Into<String>)`](crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder::resource_arn) / [`set_resource_arn(Option<String>)`](crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder::set_resource_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the function you want to configure public-access settings for. Public-access settings are applied at the function level, so you can't apply different settings to function versions or aliases.</p><br>
/// - [`public_access_block_config(PublicAccessBlockConfig)`](crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder::public_access_block_config) / [`set_public_access_block_config(Option<PublicAccessBlockConfig>)`](crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder::set_public_access_block_config):<br>required: **true**<br><p>An object defining the public-access settings you want to apply.</p> <p>To block the creation of resource-based policies that would grant public access to your function, set <code>BlockPublicPolicy</code> to <code>true</code>. To allow the creation of resource-based policies that would grant public access to your function, set <code>BlockPublicPolicy</code> to <code>false</code>.</p> <p>To block public access to your function, even if its resource-based policy allows it, set <code>RestrictPublicResource</code> to <code>true</code>. To allow public access to a function with a resource-based policy that permits it, set <code>RestrictPublicResource</code> to <code>false</code>.</p> <p>The default setting for both <code>BlockPublicPolicy</code> and <code>RestrictPublicResource</code> is <code>true</code>.</p><br>
/// - On success, responds with [`PutPublicAccessBlockConfigOutput`](crate::operation::put_public_access_block_config::PutPublicAccessBlockConfigOutput) with field(s):
/// - [`public_access_block_config(Option<PublicAccessBlockConfig>)`](crate::operation::put_public_access_block_config::PutPublicAccessBlockConfigOutput::public_access_block_config): <p>The public-access settings Lambda applied to your function.</p>
/// - On failure, responds with [`SdkError<PutPublicAccessBlockConfigError>`](crate::operation::put_public_access_block_config::PutPublicAccessBlockConfigError)
pub fn put_public_access_block_config(
&self,
) -> crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder {
crate::operation::put_public_access_block_config::builders::PutPublicAccessBlockConfigFluentBuilder::new(self.handle.clone())
}
}