{{+ resources|safe }}

pub mod provider {
    include!("provider/provider.rs");
}

pub mod functions {
    {{+ functions|safe }}
}

pub mod types {
    {{+ types|safe }}
}

#[doc(hidden)]
pub mod constants {
{% for constant in constants +%}
    pulumi_gestalt_rust::__private::pulumi_gestalt_serde_constant_string::generate_string_const!(ConstString{{ constant }}, "{{ constant }}");
{% endfor %}
}

#[unsafe(link_section = "pulumi_gestalt_provider::{{ provider_name }}")]
#[unsafe(no_mangle)]
#[cfg(target_arch = "wasm32")]
static PULUMI_WASM_PROVIDER_{{ provider_name.replace("-", "_").to_ascii_uppercase() }}: [u8; {{ provider_metadata.len() }}] = *b"{{ provider_metadata.replace("\"", "\\\"")|safe }}";

pub(crate) fn get_version() -> String {
    "{{ provider_version }}".to_string()
}