GoogleFirebaseAppCheckDeviceCheckConfig class final

Factory wrapper for google_firebase_app_check_device_check_config (provider hashicorp/google ~> 7.0).

Required identity:

  • localName: Terraform local name (the address segment after google_firebase_app_check_device_check_config.).
  • app_id: the ID of the Firebase Apple App this config binds to. See https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.iosApps#IosApp.FIELDS.app_id. Forces replacement when changed.
  • key_id: the key identifier of a private key enabled with DeviceCheck, created in your Apple Developer account.
  • private_key: the contents of the private key (.p8) file associated with keyId. Sensitive: terradart's masking layer flags this field via the generated sensitiveFields set, and the provider itself never returns the value in responses. Avoid logging or persisting TfArg values for this field outside of Terraform state.

Example:

final deviceCheck = GoogleFirebaseAppCheckDeviceCheckConfig(
  localName: 'ios_legacy',
  appId: TfArg.literal('1:1234567890:ios:abcdef'),
  keyId: TfArg.literal('ABCDEFGHIJ'),
  privateKey: TfArg.literal(privateKeyP8Contents),
  tokenTtl: TfArg.literal('3600s'),
);

Registers the legacy Apple DeviceCheck provider configuration for the given Firebase Apple App. New deployments should prefer GoogleFirebaseAppCheckAppAttestConfig (iOS 14+); DeviceCheck remains the fallback for older iOS versions.

Unlike GoogleFirebaseAppCheckAppAttestConfig (which has no provider-side secret), DeviceCheck requires you to upload an Apple Developer private key (.p8) so Firebase can sign DeviceCheck queries to Apple. The schema computes privateKeySet from server state, so you can tell from a refresh whether a value was ever supplied (the value itself is never echoed back).

No nested blocks aside from the meta-arg timeouts.

Constructors

GoogleFirebaseAppCheckDeviceCheckConfig({required String localName, required TfArg<String> appId, required TfArg<String> keyId, required TfArg<String> privateKey, TfArg<String>? tokenTtl, TfArg<String>? project, LifecycleOptions? lifecycle, List<DependencyTarget>? dependsOn})

Properties

argMap Map<String, TfArg?>
Argument-name → TfArg map. Keys are snake_case (Terraform JSON name). Synth emits these keys directly; the factory is responsible for the camelCase → snake_case translation at construction time.
finalinherited
dependsOn List<DependencyTarget>?
Optional depends_on = [...]. Each entry is a DependencyTarget — either a wholesale resource (rendered as bare address) or an explicit TfRef (rendered via bareAddress).
finalinherited
hashCode int
The hash code for this object.
no setterinherited
id → TfRef<String>
Reference to id attribute. Same as nameRef for this resource.
no setter
kind → ResourceKind
Always ResourceKind.resource. Overridden by Data.
no setterinherited
lifecycle → LifecycleOptions?
Optional lifecycle { ... } block.
finalinherited
localName String
User-supplied local name within a Stack.
finalinherited
nameRef → TfRef<String>
Reference to name attribute (the relative resource name of the DeviceCheck configuration object, in the shape projects/{project}/apps/{app_id}/deviceCheckConfig).
no setter
privateKeySet → TfRef<bool>
Reference to private_key_set attribute. Server-computed boolean: true once a private_key value has been recorded. Because the provider never echoes the privateKey field back in responses, this is the only way to detect prior provisioning from a refreshed state.
no setter
provider → ProviderBinding?
Optional explicit provider binding. Only the type is referenced here; the concrete Provider class lives in terradart_google (provider classes are defined per-provider, outside the core runtime).
finalinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sensitiveFields Set<String>
Field names that are @Sensitive per the IR-derived per-resource constant. Curated factories override with a baked-in static const Set<String> (file-private in v0.5+).
no setter
supportsDeletionProtection bool
Capability flag: true when this resource's underlying Terraform schema has a deletion_protection boolean attribute that the synth-time devMode flow can flip to false. Defaults to false; the codegen emitter overrides this to true for wrappers whose schema includes the attribute.
no setterinherited
terraformType String
Terraform resource type, e.g. google_pubsub_topic.
finalinherited
tfAddress String
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Constants

tfType → const String