healthcare

package
v5.26.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ConsentStore

type ConsentStore struct {
	pulumi.CustomResourceState

	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// Default time to live for consents in this store. Must be at least 24 hours. Updating this field will not affect the expiration time of existing consents.
	// A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
	DefaultConsentTtl pulumi.StringPtrOutput `pulumi:"defaultConsentTtl"`
	// If true, [consents.patch] [google.cloud.healthcare.v1.consent.UpdateConsent] creates the consent if it does not already exist.
	EnableConsentCreateOnUpdate pulumi.BoolPtrOutput `pulumi:"enableConsentCreateOnUpdate"`
	// User-supplied key-value pairs used to organize Consent stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: `[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}`
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: `[\p{Ll}\p{Lo}\p{N}_-]{0,63}`
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The name of this ConsentStore, for example:
	// "consent1"
	Name pulumi.StringOutput `pulumi:"name"`
}

The Consent Management API is a tool for tracking user consents and the documentation associated with the consents.

To get more information about ConsentStore, see:

* [API documentation](https://cloud.google.com/healthcare/docs/reference/rest/v1/projects.locations.datasets.consentStores) * How-to Guides

## Example Usage ### Healthcare Consent Store Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStore(ctx, "my_consent", &healthcare.ConsentStoreArgs{
			Dataset: dataset.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Healthcare Consent Store Full

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStore(ctx, "my_consent", &healthcare.ConsentStoreArgs{
			Dataset:                     dataset.ID(),
			EnableConsentCreateOnUpdate: pulumi.Bool(true),
			DefaultConsentTtl:           pulumi.String("90000s"),
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Healthcare Consent Store Iam

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/serviceAccount"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStore(ctx, "my_consent", &healthcare.ConsentStoreArgs{
			Dataset: dataset.ID(),
		})
		if err != nil {
			return err
		}
		_, err = serviceAccount.NewAccount(ctx, "test_account", &serviceAccount.AccountArgs{
			AccountId:   pulumi.String("my-account"),
			DisplayName: pulumi.String("Test Service Account"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStoreIamMember(ctx, "test_iam", &healthcare.ConsentStoreIamMemberArgs{
			Dataset:        dataset.ID(),
			ConsentStoreId: my_consent.Name,
			Role:           pulumi.String("roles/editor"),
			Member: test_account.Email.ApplyT(func(email string) (string, error) {
				return fmt.Sprintf("%v%v", "serviceAccount:", email), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ConsentStore can be imported using any of these accepted formats

```sh

$ pulumi import gcp:healthcare/consentStore:ConsentStore default {{dataset}}/consentStores/{{name}}

```

func GetConsentStore

func GetConsentStore(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsentStoreState, opts ...pulumi.ResourceOption) (*ConsentStore, error)

GetConsentStore gets an existing ConsentStore resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsentStore

func NewConsentStore(ctx *pulumi.Context,
	name string, args *ConsentStoreArgs, opts ...pulumi.ResourceOption) (*ConsentStore, error)

NewConsentStore registers a new resource with the given unique name, arguments, and options.

func (*ConsentStore) ElementType

func (*ConsentStore) ElementType() reflect.Type

func (*ConsentStore) ToConsentStoreOutput

func (i *ConsentStore) ToConsentStoreOutput() ConsentStoreOutput

func (*ConsentStore) ToConsentStoreOutputWithContext

func (i *ConsentStore) ToConsentStoreOutputWithContext(ctx context.Context) ConsentStoreOutput

func (*ConsentStore) ToConsentStorePtrOutput

func (i *ConsentStore) ToConsentStorePtrOutput() ConsentStorePtrOutput

func (*ConsentStore) ToConsentStorePtrOutputWithContext

func (i *ConsentStore) ToConsentStorePtrOutputWithContext(ctx context.Context) ConsentStorePtrOutput

type ConsentStoreArgs

type ConsentStoreArgs struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringInput
	// Default time to live for consents in this store. Must be at least 24 hours. Updating this field will not affect the expiration time of existing consents.
	// A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
	DefaultConsentTtl pulumi.StringPtrInput
	// If true, [consents.patch] [google.cloud.healthcare.v1.consent.UpdateConsent] creates the consent if it does not already exist.
	EnableConsentCreateOnUpdate pulumi.BoolPtrInput
	// User-supplied key-value pairs used to organize Consent stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: `[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}`
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: `[\p{Ll}\p{Lo}\p{N}_-]{0,63}`
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The name of this ConsentStore, for example:
	// "consent1"
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a ConsentStore resource.

func (ConsentStoreArgs) ElementType

func (ConsentStoreArgs) ElementType() reflect.Type

type ConsentStoreArray

type ConsentStoreArray []ConsentStoreInput

func (ConsentStoreArray) ElementType

func (ConsentStoreArray) ElementType() reflect.Type

func (ConsentStoreArray) ToConsentStoreArrayOutput

func (i ConsentStoreArray) ToConsentStoreArrayOutput() ConsentStoreArrayOutput

func (ConsentStoreArray) ToConsentStoreArrayOutputWithContext

func (i ConsentStoreArray) ToConsentStoreArrayOutputWithContext(ctx context.Context) ConsentStoreArrayOutput

type ConsentStoreArrayInput

type ConsentStoreArrayInput interface {
	pulumi.Input

	ToConsentStoreArrayOutput() ConsentStoreArrayOutput
	ToConsentStoreArrayOutputWithContext(context.Context) ConsentStoreArrayOutput
}

ConsentStoreArrayInput is an input type that accepts ConsentStoreArray and ConsentStoreArrayOutput values. You can construct a concrete instance of `ConsentStoreArrayInput` via:

ConsentStoreArray{ ConsentStoreArgs{...} }

type ConsentStoreArrayOutput

type ConsentStoreArrayOutput struct{ *pulumi.OutputState }

func (ConsentStoreArrayOutput) ElementType

func (ConsentStoreArrayOutput) ElementType() reflect.Type

func (ConsentStoreArrayOutput) Index

func (ConsentStoreArrayOutput) ToConsentStoreArrayOutput

func (o ConsentStoreArrayOutput) ToConsentStoreArrayOutput() ConsentStoreArrayOutput

func (ConsentStoreArrayOutput) ToConsentStoreArrayOutputWithContext

func (o ConsentStoreArrayOutput) ToConsentStoreArrayOutputWithContext(ctx context.Context) ConsentStoreArrayOutput

type ConsentStoreIamBinding

type ConsentStoreIamBinding struct {
	pulumi.CustomResourceState

	Condition ConsentStoreIamBindingConditionPtrOutput `pulumi:"condition"`
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringOutput `pulumi:"consentStoreId"`
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `healthcare.ConsentStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Cloud Healthcare ConsentStore. Each of these resources serves a different use case:

* `healthcare.ConsentStoreIamPolicy`: Authoritative. Sets the IAM policy for the consentstore and replaces any existing policy already attached. * `healthcare.ConsentStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the consentstore are preserved. * `healthcare.ConsentStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the consentstore are preserved.

> **Note:** `healthcare.ConsentStoreIamPolicy` **cannot** be used in conjunction with `healthcare.ConsentStoreIamBinding` and `healthcare.ConsentStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.ConsentStoreIamBinding` resources **can be** used in conjunction with `healthcare.ConsentStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_consent\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStoreIamPolicy(ctx, "policy", &healthcare.ConsentStoreIamPolicyArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			PolicyData:     pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_consent\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewConsentStoreIamBinding(ctx, "binding", &healthcare.ConsentStoreIamBindingArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			Role:           pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_consent\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewConsentStoreIamMember(ctx, "member", &healthcare.ConsentStoreIamMemberArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			Role:           pulumi.String("roles/viewer"),
			Member:         pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* {{dataset}}/consentStores/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Healthcare consentstore IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamBinding:ConsentStoreIamBinding editor "{{dataset}}/consentStores/{{consent_store}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamBinding:ConsentStoreIamBinding editor "{{dataset}}/consentStores/{{consent_store}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamBinding:ConsentStoreIamBinding editor {{dataset}}/consentStores/{{consent_store}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetConsentStoreIamBinding

func GetConsentStoreIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsentStoreIamBindingState, opts ...pulumi.ResourceOption) (*ConsentStoreIamBinding, error)

GetConsentStoreIamBinding gets an existing ConsentStoreIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsentStoreIamBinding

func NewConsentStoreIamBinding(ctx *pulumi.Context,
	name string, args *ConsentStoreIamBindingArgs, opts ...pulumi.ResourceOption) (*ConsentStoreIamBinding, error)

NewConsentStoreIamBinding registers a new resource with the given unique name, arguments, and options.

func (*ConsentStoreIamBinding) ElementType

func (*ConsentStoreIamBinding) ElementType() reflect.Type

func (*ConsentStoreIamBinding) ToConsentStoreIamBindingOutput

func (i *ConsentStoreIamBinding) ToConsentStoreIamBindingOutput() ConsentStoreIamBindingOutput

func (*ConsentStoreIamBinding) ToConsentStoreIamBindingOutputWithContext

func (i *ConsentStoreIamBinding) ToConsentStoreIamBindingOutputWithContext(ctx context.Context) ConsentStoreIamBindingOutput

func (*ConsentStoreIamBinding) ToConsentStoreIamBindingPtrOutput

func (i *ConsentStoreIamBinding) ToConsentStoreIamBindingPtrOutput() ConsentStoreIamBindingPtrOutput

func (*ConsentStoreIamBinding) ToConsentStoreIamBindingPtrOutputWithContext

func (i *ConsentStoreIamBinding) ToConsentStoreIamBindingPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingPtrOutput

type ConsentStoreIamBindingArgs

type ConsentStoreIamBindingArgs struct {
	Condition ConsentStoreIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringInput
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringInput
	Members pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.ConsentStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a ConsentStoreIamBinding resource.

func (ConsentStoreIamBindingArgs) ElementType

func (ConsentStoreIamBindingArgs) ElementType() reflect.Type

type ConsentStoreIamBindingArray

type ConsentStoreIamBindingArray []ConsentStoreIamBindingInput

func (ConsentStoreIamBindingArray) ElementType

func (ConsentStoreIamBindingArray) ToConsentStoreIamBindingArrayOutput

func (i ConsentStoreIamBindingArray) ToConsentStoreIamBindingArrayOutput() ConsentStoreIamBindingArrayOutput

func (ConsentStoreIamBindingArray) ToConsentStoreIamBindingArrayOutputWithContext

func (i ConsentStoreIamBindingArray) ToConsentStoreIamBindingArrayOutputWithContext(ctx context.Context) ConsentStoreIamBindingArrayOutput

type ConsentStoreIamBindingArrayInput

type ConsentStoreIamBindingArrayInput interface {
	pulumi.Input

	ToConsentStoreIamBindingArrayOutput() ConsentStoreIamBindingArrayOutput
	ToConsentStoreIamBindingArrayOutputWithContext(context.Context) ConsentStoreIamBindingArrayOutput
}

ConsentStoreIamBindingArrayInput is an input type that accepts ConsentStoreIamBindingArray and ConsentStoreIamBindingArrayOutput values. You can construct a concrete instance of `ConsentStoreIamBindingArrayInput` via:

ConsentStoreIamBindingArray{ ConsentStoreIamBindingArgs{...} }

type ConsentStoreIamBindingArrayOutput

type ConsentStoreIamBindingArrayOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamBindingArrayOutput) ElementType

func (ConsentStoreIamBindingArrayOutput) Index

func (ConsentStoreIamBindingArrayOutput) ToConsentStoreIamBindingArrayOutput

func (o ConsentStoreIamBindingArrayOutput) ToConsentStoreIamBindingArrayOutput() ConsentStoreIamBindingArrayOutput

func (ConsentStoreIamBindingArrayOutput) ToConsentStoreIamBindingArrayOutputWithContext

func (o ConsentStoreIamBindingArrayOutput) ToConsentStoreIamBindingArrayOutputWithContext(ctx context.Context) ConsentStoreIamBindingArrayOutput

type ConsentStoreIamBindingCondition

type ConsentStoreIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type ConsentStoreIamBindingConditionArgs

type ConsentStoreIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (ConsentStoreIamBindingConditionArgs) ElementType

func (ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionOutput

func (i ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionOutput() ConsentStoreIamBindingConditionOutput

func (ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionOutputWithContext

func (i ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionOutputWithContext(ctx context.Context) ConsentStoreIamBindingConditionOutput

func (ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionPtrOutput

func (i ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionPtrOutput() ConsentStoreIamBindingConditionPtrOutput

func (ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionPtrOutputWithContext

func (i ConsentStoreIamBindingConditionArgs) ToConsentStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingConditionPtrOutput

type ConsentStoreIamBindingConditionInput

type ConsentStoreIamBindingConditionInput interface {
	pulumi.Input

	ToConsentStoreIamBindingConditionOutput() ConsentStoreIamBindingConditionOutput
	ToConsentStoreIamBindingConditionOutputWithContext(context.Context) ConsentStoreIamBindingConditionOutput
}

ConsentStoreIamBindingConditionInput is an input type that accepts ConsentStoreIamBindingConditionArgs and ConsentStoreIamBindingConditionOutput values. You can construct a concrete instance of `ConsentStoreIamBindingConditionInput` via:

ConsentStoreIamBindingConditionArgs{...}

type ConsentStoreIamBindingConditionOutput

type ConsentStoreIamBindingConditionOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamBindingConditionOutput) Description

func (ConsentStoreIamBindingConditionOutput) ElementType

func (ConsentStoreIamBindingConditionOutput) Expression

func (ConsentStoreIamBindingConditionOutput) Title

func (ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionOutput

func (o ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionOutput() ConsentStoreIamBindingConditionOutput

func (ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionOutputWithContext

func (o ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionOutputWithContext(ctx context.Context) ConsentStoreIamBindingConditionOutput

func (ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionPtrOutput

func (o ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionPtrOutput() ConsentStoreIamBindingConditionPtrOutput

func (ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionPtrOutputWithContext

func (o ConsentStoreIamBindingConditionOutput) ToConsentStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingConditionPtrOutput

type ConsentStoreIamBindingConditionPtrInput

type ConsentStoreIamBindingConditionPtrInput interface {
	pulumi.Input

	ToConsentStoreIamBindingConditionPtrOutput() ConsentStoreIamBindingConditionPtrOutput
	ToConsentStoreIamBindingConditionPtrOutputWithContext(context.Context) ConsentStoreIamBindingConditionPtrOutput
}

ConsentStoreIamBindingConditionPtrInput is an input type that accepts ConsentStoreIamBindingConditionArgs, ConsentStoreIamBindingConditionPtr and ConsentStoreIamBindingConditionPtrOutput values. You can construct a concrete instance of `ConsentStoreIamBindingConditionPtrInput` via:

        ConsentStoreIamBindingConditionArgs{...}

or:

        nil

type ConsentStoreIamBindingConditionPtrOutput

type ConsentStoreIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamBindingConditionPtrOutput) Description

func (ConsentStoreIamBindingConditionPtrOutput) Elem

func (ConsentStoreIamBindingConditionPtrOutput) ElementType

func (ConsentStoreIamBindingConditionPtrOutput) Expression

func (ConsentStoreIamBindingConditionPtrOutput) Title

func (ConsentStoreIamBindingConditionPtrOutput) ToConsentStoreIamBindingConditionPtrOutput

func (o ConsentStoreIamBindingConditionPtrOutput) ToConsentStoreIamBindingConditionPtrOutput() ConsentStoreIamBindingConditionPtrOutput

func (ConsentStoreIamBindingConditionPtrOutput) ToConsentStoreIamBindingConditionPtrOutputWithContext

func (o ConsentStoreIamBindingConditionPtrOutput) ToConsentStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingConditionPtrOutput

type ConsentStoreIamBindingInput

type ConsentStoreIamBindingInput interface {
	pulumi.Input

	ToConsentStoreIamBindingOutput() ConsentStoreIamBindingOutput
	ToConsentStoreIamBindingOutputWithContext(ctx context.Context) ConsentStoreIamBindingOutput
}

type ConsentStoreIamBindingMap

type ConsentStoreIamBindingMap map[string]ConsentStoreIamBindingInput

func (ConsentStoreIamBindingMap) ElementType

func (ConsentStoreIamBindingMap) ElementType() reflect.Type

func (ConsentStoreIamBindingMap) ToConsentStoreIamBindingMapOutput

func (i ConsentStoreIamBindingMap) ToConsentStoreIamBindingMapOutput() ConsentStoreIamBindingMapOutput

func (ConsentStoreIamBindingMap) ToConsentStoreIamBindingMapOutputWithContext

func (i ConsentStoreIamBindingMap) ToConsentStoreIamBindingMapOutputWithContext(ctx context.Context) ConsentStoreIamBindingMapOutput

type ConsentStoreIamBindingMapInput

type ConsentStoreIamBindingMapInput interface {
	pulumi.Input

	ToConsentStoreIamBindingMapOutput() ConsentStoreIamBindingMapOutput
	ToConsentStoreIamBindingMapOutputWithContext(context.Context) ConsentStoreIamBindingMapOutput
}

ConsentStoreIamBindingMapInput is an input type that accepts ConsentStoreIamBindingMap and ConsentStoreIamBindingMapOutput values. You can construct a concrete instance of `ConsentStoreIamBindingMapInput` via:

ConsentStoreIamBindingMap{ "key": ConsentStoreIamBindingArgs{...} }

type ConsentStoreIamBindingMapOutput

type ConsentStoreIamBindingMapOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamBindingMapOutput) ElementType

func (ConsentStoreIamBindingMapOutput) MapIndex

func (ConsentStoreIamBindingMapOutput) ToConsentStoreIamBindingMapOutput

func (o ConsentStoreIamBindingMapOutput) ToConsentStoreIamBindingMapOutput() ConsentStoreIamBindingMapOutput

func (ConsentStoreIamBindingMapOutput) ToConsentStoreIamBindingMapOutputWithContext

func (o ConsentStoreIamBindingMapOutput) ToConsentStoreIamBindingMapOutputWithContext(ctx context.Context) ConsentStoreIamBindingMapOutput

type ConsentStoreIamBindingOutput

type ConsentStoreIamBindingOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamBindingOutput) ElementType

func (ConsentStoreIamBindingOutput) ToConsentStoreIamBindingOutput

func (o ConsentStoreIamBindingOutput) ToConsentStoreIamBindingOutput() ConsentStoreIamBindingOutput

func (ConsentStoreIamBindingOutput) ToConsentStoreIamBindingOutputWithContext

func (o ConsentStoreIamBindingOutput) ToConsentStoreIamBindingOutputWithContext(ctx context.Context) ConsentStoreIamBindingOutput

func (ConsentStoreIamBindingOutput) ToConsentStoreIamBindingPtrOutput

func (o ConsentStoreIamBindingOutput) ToConsentStoreIamBindingPtrOutput() ConsentStoreIamBindingPtrOutput

func (ConsentStoreIamBindingOutput) ToConsentStoreIamBindingPtrOutputWithContext

func (o ConsentStoreIamBindingOutput) ToConsentStoreIamBindingPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingPtrOutput

type ConsentStoreIamBindingPtrInput

type ConsentStoreIamBindingPtrInput interface {
	pulumi.Input

	ToConsentStoreIamBindingPtrOutput() ConsentStoreIamBindingPtrOutput
	ToConsentStoreIamBindingPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingPtrOutput
}

type ConsentStoreIamBindingPtrOutput

type ConsentStoreIamBindingPtrOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamBindingPtrOutput) Elem added in v5.21.0

func (ConsentStoreIamBindingPtrOutput) ElementType

func (ConsentStoreIamBindingPtrOutput) ToConsentStoreIamBindingPtrOutput

func (o ConsentStoreIamBindingPtrOutput) ToConsentStoreIamBindingPtrOutput() ConsentStoreIamBindingPtrOutput

func (ConsentStoreIamBindingPtrOutput) ToConsentStoreIamBindingPtrOutputWithContext

func (o ConsentStoreIamBindingPtrOutput) ToConsentStoreIamBindingPtrOutputWithContext(ctx context.Context) ConsentStoreIamBindingPtrOutput

type ConsentStoreIamBindingState

type ConsentStoreIamBindingState struct {
	Condition ConsentStoreIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringPtrInput
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.ConsentStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (ConsentStoreIamBindingState) ElementType

type ConsentStoreIamMember

type ConsentStoreIamMember struct {
	pulumi.CustomResourceState

	Condition ConsentStoreIamMemberConditionPtrOutput `pulumi:"condition"`
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringOutput `pulumi:"consentStoreId"`
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `healthcare.ConsentStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Cloud Healthcare ConsentStore. Each of these resources serves a different use case:

* `healthcare.ConsentStoreIamPolicy`: Authoritative. Sets the IAM policy for the consentstore and replaces any existing policy already attached. * `healthcare.ConsentStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the consentstore are preserved. * `healthcare.ConsentStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the consentstore are preserved.

> **Note:** `healthcare.ConsentStoreIamPolicy` **cannot** be used in conjunction with `healthcare.ConsentStoreIamBinding` and `healthcare.ConsentStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.ConsentStoreIamBinding` resources **can be** used in conjunction with `healthcare.ConsentStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_consent\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStoreIamPolicy(ctx, "policy", &healthcare.ConsentStoreIamPolicyArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			PolicyData:     pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_consent\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewConsentStoreIamBinding(ctx, "binding", &healthcare.ConsentStoreIamBindingArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			Role:           pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_consent\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewConsentStoreIamMember(ctx, "member", &healthcare.ConsentStoreIamMemberArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			Role:           pulumi.String("roles/viewer"),
			Member:         pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* {{dataset}}/consentStores/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Healthcare consentstore IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamMember:ConsentStoreIamMember editor "{{dataset}}/consentStores/{{consent_store}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamMember:ConsentStoreIamMember editor "{{dataset}}/consentStores/{{consent_store}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamMember:ConsentStoreIamMember editor {{dataset}}/consentStores/{{consent_store}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetConsentStoreIamMember

func GetConsentStoreIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsentStoreIamMemberState, opts ...pulumi.ResourceOption) (*ConsentStoreIamMember, error)

GetConsentStoreIamMember gets an existing ConsentStoreIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsentStoreIamMember

func NewConsentStoreIamMember(ctx *pulumi.Context,
	name string, args *ConsentStoreIamMemberArgs, opts ...pulumi.ResourceOption) (*ConsentStoreIamMember, error)

NewConsentStoreIamMember registers a new resource with the given unique name, arguments, and options.

func (*ConsentStoreIamMember) ElementType

func (*ConsentStoreIamMember) ElementType() reflect.Type

func (*ConsentStoreIamMember) ToConsentStoreIamMemberOutput

func (i *ConsentStoreIamMember) ToConsentStoreIamMemberOutput() ConsentStoreIamMemberOutput

func (*ConsentStoreIamMember) ToConsentStoreIamMemberOutputWithContext

func (i *ConsentStoreIamMember) ToConsentStoreIamMemberOutputWithContext(ctx context.Context) ConsentStoreIamMemberOutput

func (*ConsentStoreIamMember) ToConsentStoreIamMemberPtrOutput

func (i *ConsentStoreIamMember) ToConsentStoreIamMemberPtrOutput() ConsentStoreIamMemberPtrOutput

func (*ConsentStoreIamMember) ToConsentStoreIamMemberPtrOutputWithContext

func (i *ConsentStoreIamMember) ToConsentStoreIamMemberPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberPtrOutput

type ConsentStoreIamMemberArgs

type ConsentStoreIamMemberArgs struct {
	Condition ConsentStoreIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringInput
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringInput
	Member  pulumi.StringInput
	// The role that should be applied. Only one
	// `healthcare.ConsentStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a ConsentStoreIamMember resource.

func (ConsentStoreIamMemberArgs) ElementType

func (ConsentStoreIamMemberArgs) ElementType() reflect.Type

type ConsentStoreIamMemberArray

type ConsentStoreIamMemberArray []ConsentStoreIamMemberInput

func (ConsentStoreIamMemberArray) ElementType

func (ConsentStoreIamMemberArray) ElementType() reflect.Type

func (ConsentStoreIamMemberArray) ToConsentStoreIamMemberArrayOutput

func (i ConsentStoreIamMemberArray) ToConsentStoreIamMemberArrayOutput() ConsentStoreIamMemberArrayOutput

func (ConsentStoreIamMemberArray) ToConsentStoreIamMemberArrayOutputWithContext

func (i ConsentStoreIamMemberArray) ToConsentStoreIamMemberArrayOutputWithContext(ctx context.Context) ConsentStoreIamMemberArrayOutput

type ConsentStoreIamMemberArrayInput

type ConsentStoreIamMemberArrayInput interface {
	pulumi.Input

	ToConsentStoreIamMemberArrayOutput() ConsentStoreIamMemberArrayOutput
	ToConsentStoreIamMemberArrayOutputWithContext(context.Context) ConsentStoreIamMemberArrayOutput
}

ConsentStoreIamMemberArrayInput is an input type that accepts ConsentStoreIamMemberArray and ConsentStoreIamMemberArrayOutput values. You can construct a concrete instance of `ConsentStoreIamMemberArrayInput` via:

ConsentStoreIamMemberArray{ ConsentStoreIamMemberArgs{...} }

type ConsentStoreIamMemberArrayOutput

type ConsentStoreIamMemberArrayOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamMemberArrayOutput) ElementType

func (ConsentStoreIamMemberArrayOutput) Index

func (ConsentStoreIamMemberArrayOutput) ToConsentStoreIamMemberArrayOutput

func (o ConsentStoreIamMemberArrayOutput) ToConsentStoreIamMemberArrayOutput() ConsentStoreIamMemberArrayOutput

func (ConsentStoreIamMemberArrayOutput) ToConsentStoreIamMemberArrayOutputWithContext

func (o ConsentStoreIamMemberArrayOutput) ToConsentStoreIamMemberArrayOutputWithContext(ctx context.Context) ConsentStoreIamMemberArrayOutput

type ConsentStoreIamMemberCondition

type ConsentStoreIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type ConsentStoreIamMemberConditionArgs

type ConsentStoreIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (ConsentStoreIamMemberConditionArgs) ElementType

func (ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionOutput

func (i ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionOutput() ConsentStoreIamMemberConditionOutput

func (ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionOutputWithContext

func (i ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionOutputWithContext(ctx context.Context) ConsentStoreIamMemberConditionOutput

func (ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionPtrOutput

func (i ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionPtrOutput() ConsentStoreIamMemberConditionPtrOutput

func (ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionPtrOutputWithContext

func (i ConsentStoreIamMemberConditionArgs) ToConsentStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberConditionPtrOutput

type ConsentStoreIamMemberConditionInput

type ConsentStoreIamMemberConditionInput interface {
	pulumi.Input

	ToConsentStoreIamMemberConditionOutput() ConsentStoreIamMemberConditionOutput
	ToConsentStoreIamMemberConditionOutputWithContext(context.Context) ConsentStoreIamMemberConditionOutput
}

ConsentStoreIamMemberConditionInput is an input type that accepts ConsentStoreIamMemberConditionArgs and ConsentStoreIamMemberConditionOutput values. You can construct a concrete instance of `ConsentStoreIamMemberConditionInput` via:

ConsentStoreIamMemberConditionArgs{...}

type ConsentStoreIamMemberConditionOutput

type ConsentStoreIamMemberConditionOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamMemberConditionOutput) Description

func (ConsentStoreIamMemberConditionOutput) ElementType

func (ConsentStoreIamMemberConditionOutput) Expression

func (ConsentStoreIamMemberConditionOutput) Title

func (ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionOutput

func (o ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionOutput() ConsentStoreIamMemberConditionOutput

func (ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionOutputWithContext

func (o ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionOutputWithContext(ctx context.Context) ConsentStoreIamMemberConditionOutput

func (ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionPtrOutput

func (o ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionPtrOutput() ConsentStoreIamMemberConditionPtrOutput

func (ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionPtrOutputWithContext

func (o ConsentStoreIamMemberConditionOutput) ToConsentStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberConditionPtrOutput

type ConsentStoreIamMemberConditionPtrInput

type ConsentStoreIamMemberConditionPtrInput interface {
	pulumi.Input

	ToConsentStoreIamMemberConditionPtrOutput() ConsentStoreIamMemberConditionPtrOutput
	ToConsentStoreIamMemberConditionPtrOutputWithContext(context.Context) ConsentStoreIamMemberConditionPtrOutput
}

ConsentStoreIamMemberConditionPtrInput is an input type that accepts ConsentStoreIamMemberConditionArgs, ConsentStoreIamMemberConditionPtr and ConsentStoreIamMemberConditionPtrOutput values. You can construct a concrete instance of `ConsentStoreIamMemberConditionPtrInput` via:

        ConsentStoreIamMemberConditionArgs{...}

or:

        nil

type ConsentStoreIamMemberConditionPtrOutput

type ConsentStoreIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamMemberConditionPtrOutput) Description

func (ConsentStoreIamMemberConditionPtrOutput) Elem

func (ConsentStoreIamMemberConditionPtrOutput) ElementType

func (ConsentStoreIamMemberConditionPtrOutput) Expression

func (ConsentStoreIamMemberConditionPtrOutput) Title

func (ConsentStoreIamMemberConditionPtrOutput) ToConsentStoreIamMemberConditionPtrOutput

func (o ConsentStoreIamMemberConditionPtrOutput) ToConsentStoreIamMemberConditionPtrOutput() ConsentStoreIamMemberConditionPtrOutput

func (ConsentStoreIamMemberConditionPtrOutput) ToConsentStoreIamMemberConditionPtrOutputWithContext

func (o ConsentStoreIamMemberConditionPtrOutput) ToConsentStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberConditionPtrOutput

type ConsentStoreIamMemberInput

type ConsentStoreIamMemberInput interface {
	pulumi.Input

	ToConsentStoreIamMemberOutput() ConsentStoreIamMemberOutput
	ToConsentStoreIamMemberOutputWithContext(ctx context.Context) ConsentStoreIamMemberOutput
}

type ConsentStoreIamMemberMap

type ConsentStoreIamMemberMap map[string]ConsentStoreIamMemberInput

func (ConsentStoreIamMemberMap) ElementType

func (ConsentStoreIamMemberMap) ElementType() reflect.Type

func (ConsentStoreIamMemberMap) ToConsentStoreIamMemberMapOutput

func (i ConsentStoreIamMemberMap) ToConsentStoreIamMemberMapOutput() ConsentStoreIamMemberMapOutput

func (ConsentStoreIamMemberMap) ToConsentStoreIamMemberMapOutputWithContext

func (i ConsentStoreIamMemberMap) ToConsentStoreIamMemberMapOutputWithContext(ctx context.Context) ConsentStoreIamMemberMapOutput

type ConsentStoreIamMemberMapInput

type ConsentStoreIamMemberMapInput interface {
	pulumi.Input

	ToConsentStoreIamMemberMapOutput() ConsentStoreIamMemberMapOutput
	ToConsentStoreIamMemberMapOutputWithContext(context.Context) ConsentStoreIamMemberMapOutput
}

ConsentStoreIamMemberMapInput is an input type that accepts ConsentStoreIamMemberMap and ConsentStoreIamMemberMapOutput values. You can construct a concrete instance of `ConsentStoreIamMemberMapInput` via:

ConsentStoreIamMemberMap{ "key": ConsentStoreIamMemberArgs{...} }

type ConsentStoreIamMemberMapOutput

type ConsentStoreIamMemberMapOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamMemberMapOutput) ElementType

func (ConsentStoreIamMemberMapOutput) MapIndex

func (ConsentStoreIamMemberMapOutput) ToConsentStoreIamMemberMapOutput

func (o ConsentStoreIamMemberMapOutput) ToConsentStoreIamMemberMapOutput() ConsentStoreIamMemberMapOutput

func (ConsentStoreIamMemberMapOutput) ToConsentStoreIamMemberMapOutputWithContext

func (o ConsentStoreIamMemberMapOutput) ToConsentStoreIamMemberMapOutputWithContext(ctx context.Context) ConsentStoreIamMemberMapOutput

type ConsentStoreIamMemberOutput

type ConsentStoreIamMemberOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamMemberOutput) ElementType

func (ConsentStoreIamMemberOutput) ToConsentStoreIamMemberOutput

func (o ConsentStoreIamMemberOutput) ToConsentStoreIamMemberOutput() ConsentStoreIamMemberOutput

func (ConsentStoreIamMemberOutput) ToConsentStoreIamMemberOutputWithContext

func (o ConsentStoreIamMemberOutput) ToConsentStoreIamMemberOutputWithContext(ctx context.Context) ConsentStoreIamMemberOutput

func (ConsentStoreIamMemberOutput) ToConsentStoreIamMemberPtrOutput

func (o ConsentStoreIamMemberOutput) ToConsentStoreIamMemberPtrOutput() ConsentStoreIamMemberPtrOutput

func (ConsentStoreIamMemberOutput) ToConsentStoreIamMemberPtrOutputWithContext

func (o ConsentStoreIamMemberOutput) ToConsentStoreIamMemberPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberPtrOutput

type ConsentStoreIamMemberPtrInput

type ConsentStoreIamMemberPtrInput interface {
	pulumi.Input

	ToConsentStoreIamMemberPtrOutput() ConsentStoreIamMemberPtrOutput
	ToConsentStoreIamMemberPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberPtrOutput
}

type ConsentStoreIamMemberPtrOutput

type ConsentStoreIamMemberPtrOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamMemberPtrOutput) Elem added in v5.21.0

func (ConsentStoreIamMemberPtrOutput) ElementType

func (ConsentStoreIamMemberPtrOutput) ToConsentStoreIamMemberPtrOutput

func (o ConsentStoreIamMemberPtrOutput) ToConsentStoreIamMemberPtrOutput() ConsentStoreIamMemberPtrOutput

func (ConsentStoreIamMemberPtrOutput) ToConsentStoreIamMemberPtrOutputWithContext

func (o ConsentStoreIamMemberPtrOutput) ToConsentStoreIamMemberPtrOutputWithContext(ctx context.Context) ConsentStoreIamMemberPtrOutput

type ConsentStoreIamMemberState

type ConsentStoreIamMemberState struct {
	Condition ConsentStoreIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringPtrInput
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `healthcare.ConsentStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (ConsentStoreIamMemberState) ElementType

func (ConsentStoreIamMemberState) ElementType() reflect.Type

type ConsentStoreIamPolicy

type ConsentStoreIamPolicy struct {
	pulumi.CustomResourceState

	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringOutput `pulumi:"consentStoreId"`
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Three different resources help you manage your IAM policy for Cloud Healthcare ConsentStore. Each of these resources serves a different use case:

* `healthcare.ConsentStoreIamPolicy`: Authoritative. Sets the IAM policy for the consentstore and replaces any existing policy already attached. * `healthcare.ConsentStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the consentstore are preserved. * `healthcare.ConsentStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the consentstore are preserved.

> **Note:** `healthcare.ConsentStoreIamPolicy` **cannot** be used in conjunction with `healthcare.ConsentStoreIamBinding` and `healthcare.ConsentStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.ConsentStoreIamBinding` resources **can be** used in conjunction with `healthcare.ConsentStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_consent\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewConsentStoreIamPolicy(ctx, "policy", &healthcare.ConsentStoreIamPolicyArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			PolicyData:     pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_consent\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewConsentStoreIamBinding(ctx, "binding", &healthcare.ConsentStoreIamBindingArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			Role:           pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_consent\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewConsentStoreIamMember(ctx, "member", &healthcare.ConsentStoreIamMemberArgs{
			Dataset:        pulumi.Any(google_healthcare_consent_store.My - consent.Dataset),
			ConsentStoreId: pulumi.Any(google_healthcare_consent_store.My - consent.Name),
			Role:           pulumi.String("roles/viewer"),
			Member:         pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* {{dataset}}/consentStores/{{name}} * {{name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud Healthcare consentstore IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamPolicy:ConsentStoreIamPolicy editor "{{dataset}}/consentStores/{{consent_store}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamPolicy:ConsentStoreIamPolicy editor "{{dataset}}/consentStores/{{consent_store}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:healthcare/consentStoreIamPolicy:ConsentStoreIamPolicy editor {{dataset}}/consentStores/{{consent_store}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetConsentStoreIamPolicy

func GetConsentStoreIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConsentStoreIamPolicyState, opts ...pulumi.ResourceOption) (*ConsentStoreIamPolicy, error)

GetConsentStoreIamPolicy gets an existing ConsentStoreIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConsentStoreIamPolicy

func NewConsentStoreIamPolicy(ctx *pulumi.Context,
	name string, args *ConsentStoreIamPolicyArgs, opts ...pulumi.ResourceOption) (*ConsentStoreIamPolicy, error)

NewConsentStoreIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*ConsentStoreIamPolicy) ElementType

func (*ConsentStoreIamPolicy) ElementType() reflect.Type

func (*ConsentStoreIamPolicy) ToConsentStoreIamPolicyOutput

func (i *ConsentStoreIamPolicy) ToConsentStoreIamPolicyOutput() ConsentStoreIamPolicyOutput

func (*ConsentStoreIamPolicy) ToConsentStoreIamPolicyOutputWithContext

func (i *ConsentStoreIamPolicy) ToConsentStoreIamPolicyOutputWithContext(ctx context.Context) ConsentStoreIamPolicyOutput

func (*ConsentStoreIamPolicy) ToConsentStoreIamPolicyPtrOutput

func (i *ConsentStoreIamPolicy) ToConsentStoreIamPolicyPtrOutput() ConsentStoreIamPolicyPtrOutput

func (*ConsentStoreIamPolicy) ToConsentStoreIamPolicyPtrOutputWithContext

func (i *ConsentStoreIamPolicy) ToConsentStoreIamPolicyPtrOutputWithContext(ctx context.Context) ConsentStoreIamPolicyPtrOutput

type ConsentStoreIamPolicyArgs

type ConsentStoreIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringInput
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a ConsentStoreIamPolicy resource.

func (ConsentStoreIamPolicyArgs) ElementType

func (ConsentStoreIamPolicyArgs) ElementType() reflect.Type

type ConsentStoreIamPolicyArray

type ConsentStoreIamPolicyArray []ConsentStoreIamPolicyInput

func (ConsentStoreIamPolicyArray) ElementType

func (ConsentStoreIamPolicyArray) ElementType() reflect.Type

func (ConsentStoreIamPolicyArray) ToConsentStoreIamPolicyArrayOutput

func (i ConsentStoreIamPolicyArray) ToConsentStoreIamPolicyArrayOutput() ConsentStoreIamPolicyArrayOutput

func (ConsentStoreIamPolicyArray) ToConsentStoreIamPolicyArrayOutputWithContext

func (i ConsentStoreIamPolicyArray) ToConsentStoreIamPolicyArrayOutputWithContext(ctx context.Context) ConsentStoreIamPolicyArrayOutput

type ConsentStoreIamPolicyArrayInput

type ConsentStoreIamPolicyArrayInput interface {
	pulumi.Input

	ToConsentStoreIamPolicyArrayOutput() ConsentStoreIamPolicyArrayOutput
	ToConsentStoreIamPolicyArrayOutputWithContext(context.Context) ConsentStoreIamPolicyArrayOutput
}

ConsentStoreIamPolicyArrayInput is an input type that accepts ConsentStoreIamPolicyArray and ConsentStoreIamPolicyArrayOutput values. You can construct a concrete instance of `ConsentStoreIamPolicyArrayInput` via:

ConsentStoreIamPolicyArray{ ConsentStoreIamPolicyArgs{...} }

type ConsentStoreIamPolicyArrayOutput

type ConsentStoreIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamPolicyArrayOutput) ElementType

func (ConsentStoreIamPolicyArrayOutput) Index

func (ConsentStoreIamPolicyArrayOutput) ToConsentStoreIamPolicyArrayOutput

func (o ConsentStoreIamPolicyArrayOutput) ToConsentStoreIamPolicyArrayOutput() ConsentStoreIamPolicyArrayOutput

func (ConsentStoreIamPolicyArrayOutput) ToConsentStoreIamPolicyArrayOutputWithContext

func (o ConsentStoreIamPolicyArrayOutput) ToConsentStoreIamPolicyArrayOutputWithContext(ctx context.Context) ConsentStoreIamPolicyArrayOutput

type ConsentStoreIamPolicyInput

type ConsentStoreIamPolicyInput interface {
	pulumi.Input

	ToConsentStoreIamPolicyOutput() ConsentStoreIamPolicyOutput
	ToConsentStoreIamPolicyOutputWithContext(ctx context.Context) ConsentStoreIamPolicyOutput
}

type ConsentStoreIamPolicyMap

type ConsentStoreIamPolicyMap map[string]ConsentStoreIamPolicyInput

func (ConsentStoreIamPolicyMap) ElementType

func (ConsentStoreIamPolicyMap) ElementType() reflect.Type

func (ConsentStoreIamPolicyMap) ToConsentStoreIamPolicyMapOutput

func (i ConsentStoreIamPolicyMap) ToConsentStoreIamPolicyMapOutput() ConsentStoreIamPolicyMapOutput

func (ConsentStoreIamPolicyMap) ToConsentStoreIamPolicyMapOutputWithContext

func (i ConsentStoreIamPolicyMap) ToConsentStoreIamPolicyMapOutputWithContext(ctx context.Context) ConsentStoreIamPolicyMapOutput

type ConsentStoreIamPolicyMapInput

type ConsentStoreIamPolicyMapInput interface {
	pulumi.Input

	ToConsentStoreIamPolicyMapOutput() ConsentStoreIamPolicyMapOutput
	ToConsentStoreIamPolicyMapOutputWithContext(context.Context) ConsentStoreIamPolicyMapOutput
}

ConsentStoreIamPolicyMapInput is an input type that accepts ConsentStoreIamPolicyMap and ConsentStoreIamPolicyMapOutput values. You can construct a concrete instance of `ConsentStoreIamPolicyMapInput` via:

ConsentStoreIamPolicyMap{ "key": ConsentStoreIamPolicyArgs{...} }

type ConsentStoreIamPolicyMapOutput

type ConsentStoreIamPolicyMapOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamPolicyMapOutput) ElementType

func (ConsentStoreIamPolicyMapOutput) MapIndex

func (ConsentStoreIamPolicyMapOutput) ToConsentStoreIamPolicyMapOutput

func (o ConsentStoreIamPolicyMapOutput) ToConsentStoreIamPolicyMapOutput() ConsentStoreIamPolicyMapOutput

func (ConsentStoreIamPolicyMapOutput) ToConsentStoreIamPolicyMapOutputWithContext

func (o ConsentStoreIamPolicyMapOutput) ToConsentStoreIamPolicyMapOutputWithContext(ctx context.Context) ConsentStoreIamPolicyMapOutput

type ConsentStoreIamPolicyOutput

type ConsentStoreIamPolicyOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamPolicyOutput) ElementType

func (ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyOutput

func (o ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyOutput() ConsentStoreIamPolicyOutput

func (ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyOutputWithContext

func (o ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyOutputWithContext(ctx context.Context) ConsentStoreIamPolicyOutput

func (ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyPtrOutput

func (o ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyPtrOutput() ConsentStoreIamPolicyPtrOutput

func (ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyPtrOutputWithContext

func (o ConsentStoreIamPolicyOutput) ToConsentStoreIamPolicyPtrOutputWithContext(ctx context.Context) ConsentStoreIamPolicyPtrOutput

type ConsentStoreIamPolicyPtrInput

type ConsentStoreIamPolicyPtrInput interface {
	pulumi.Input

	ToConsentStoreIamPolicyPtrOutput() ConsentStoreIamPolicyPtrOutput
	ToConsentStoreIamPolicyPtrOutputWithContext(ctx context.Context) ConsentStoreIamPolicyPtrOutput
}

type ConsentStoreIamPolicyPtrOutput

type ConsentStoreIamPolicyPtrOutput struct{ *pulumi.OutputState }

func (ConsentStoreIamPolicyPtrOutput) Elem added in v5.21.0

func (ConsentStoreIamPolicyPtrOutput) ElementType

func (ConsentStoreIamPolicyPtrOutput) ToConsentStoreIamPolicyPtrOutput

func (o ConsentStoreIamPolicyPtrOutput) ToConsentStoreIamPolicyPtrOutput() ConsentStoreIamPolicyPtrOutput

func (ConsentStoreIamPolicyPtrOutput) ToConsentStoreIamPolicyPtrOutputWithContext

func (o ConsentStoreIamPolicyPtrOutput) ToConsentStoreIamPolicyPtrOutputWithContext(ctx context.Context) ConsentStoreIamPolicyPtrOutput

type ConsentStoreIamPolicyState

type ConsentStoreIamPolicyState struct {
	// Used to find the parent resource to bind the IAM policy to
	ConsentStoreId pulumi.StringPtrInput
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	// Used to find the parent resource to bind the IAM policy to
	Dataset pulumi.StringPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
}

func (ConsentStoreIamPolicyState) ElementType

func (ConsentStoreIamPolicyState) ElementType() reflect.Type

type ConsentStoreInput

type ConsentStoreInput interface {
	pulumi.Input

	ToConsentStoreOutput() ConsentStoreOutput
	ToConsentStoreOutputWithContext(ctx context.Context) ConsentStoreOutput
}

type ConsentStoreMap

type ConsentStoreMap map[string]ConsentStoreInput

func (ConsentStoreMap) ElementType

func (ConsentStoreMap) ElementType() reflect.Type

func (ConsentStoreMap) ToConsentStoreMapOutput

func (i ConsentStoreMap) ToConsentStoreMapOutput() ConsentStoreMapOutput

func (ConsentStoreMap) ToConsentStoreMapOutputWithContext

func (i ConsentStoreMap) ToConsentStoreMapOutputWithContext(ctx context.Context) ConsentStoreMapOutput

type ConsentStoreMapInput

type ConsentStoreMapInput interface {
	pulumi.Input

	ToConsentStoreMapOutput() ConsentStoreMapOutput
	ToConsentStoreMapOutputWithContext(context.Context) ConsentStoreMapOutput
}

ConsentStoreMapInput is an input type that accepts ConsentStoreMap and ConsentStoreMapOutput values. You can construct a concrete instance of `ConsentStoreMapInput` via:

ConsentStoreMap{ "key": ConsentStoreArgs{...} }

type ConsentStoreMapOutput

type ConsentStoreMapOutput struct{ *pulumi.OutputState }

func (ConsentStoreMapOutput) ElementType

func (ConsentStoreMapOutput) ElementType() reflect.Type

func (ConsentStoreMapOutput) MapIndex

func (ConsentStoreMapOutput) ToConsentStoreMapOutput

func (o ConsentStoreMapOutput) ToConsentStoreMapOutput() ConsentStoreMapOutput

func (ConsentStoreMapOutput) ToConsentStoreMapOutputWithContext

func (o ConsentStoreMapOutput) ToConsentStoreMapOutputWithContext(ctx context.Context) ConsentStoreMapOutput

type ConsentStoreOutput

type ConsentStoreOutput struct{ *pulumi.OutputState }

func (ConsentStoreOutput) ElementType

func (ConsentStoreOutput) ElementType() reflect.Type

func (ConsentStoreOutput) ToConsentStoreOutput

func (o ConsentStoreOutput) ToConsentStoreOutput() ConsentStoreOutput

func (ConsentStoreOutput) ToConsentStoreOutputWithContext

func (o ConsentStoreOutput) ToConsentStoreOutputWithContext(ctx context.Context) ConsentStoreOutput

func (ConsentStoreOutput) ToConsentStorePtrOutput

func (o ConsentStoreOutput) ToConsentStorePtrOutput() ConsentStorePtrOutput

func (ConsentStoreOutput) ToConsentStorePtrOutputWithContext

func (o ConsentStoreOutput) ToConsentStorePtrOutputWithContext(ctx context.Context) ConsentStorePtrOutput

type ConsentStorePtrInput

type ConsentStorePtrInput interface {
	pulumi.Input

	ToConsentStorePtrOutput() ConsentStorePtrOutput
	ToConsentStorePtrOutputWithContext(ctx context.Context) ConsentStorePtrOutput
}

type ConsentStorePtrOutput

type ConsentStorePtrOutput struct{ *pulumi.OutputState }

func (ConsentStorePtrOutput) Elem added in v5.21.0

func (ConsentStorePtrOutput) ElementType

func (ConsentStorePtrOutput) ElementType() reflect.Type

func (ConsentStorePtrOutput) ToConsentStorePtrOutput

func (o ConsentStorePtrOutput) ToConsentStorePtrOutput() ConsentStorePtrOutput

func (ConsentStorePtrOutput) ToConsentStorePtrOutputWithContext

func (o ConsentStorePtrOutput) ToConsentStorePtrOutputWithContext(ctx context.Context) ConsentStorePtrOutput

type ConsentStoreState

type ConsentStoreState struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringPtrInput
	// Default time to live for consents in this store. Must be at least 24 hours. Updating this field will not affect the expiration time of existing consents.
	// A duration in seconds with up to nine fractional digits, terminated by 's'. Example: "3.5s".
	DefaultConsentTtl pulumi.StringPtrInput
	// If true, [consents.patch] [google.cloud.healthcare.v1.consent.UpdateConsent] creates the consent if it does not already exist.
	EnableConsentCreateOnUpdate pulumi.BoolPtrInput
	// User-supplied key-value pairs used to organize Consent stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: `[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}`
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: `[\p{Ll}\p{Lo}\p{N}_-]{0,63}`
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The name of this ConsentStore, for example:
	// "consent1"
	Name pulumi.StringPtrInput
}

func (ConsentStoreState) ElementType

func (ConsentStoreState) ElementType() reflect.Type

type Dataset

type Dataset struct {
	pulumi.CustomResourceState

	// The location for the Dataset.
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name for the Dataset.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The fully qualified name of this dataset
	SelfLink pulumi.StringOutput `pulumi:"selfLink"`
	// The default timezone used by this dataset. Must be a either a valid IANA time zone name such as
	// "America/New_York" or empty, which defaults to UTC. This is used for parsing times in resources
	// (e.g., HL7 messages) where no explicit timezone is specified.
	TimeZone pulumi.StringOutput `pulumi:"timeZone"`
}

A Healthcare `Dataset` is a toplevel logical grouping of `dicomStores`, `fhirStores` and `hl7V2Stores`.

To get more information about Dataset, see:

* [API documentation](https://cloud.google.com/healthcare/docs/reference/rest/v1/projects.locations.datasets) * How-to Guides

## Example Usage ### Healthcare Dataset Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDataset(ctx, "_default", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
			TimeZone: pulumi.String("UTC"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Dataset can be imported using any of these accepted formats

```sh

$ pulumi import gcp:healthcare/dataset:Dataset default projects/{{project}}/locations/{{location}}/datasets/{{name}}

```

```sh

$ pulumi import gcp:healthcare/dataset:Dataset default {{project}}/{{location}}/{{name}}

```

```sh

$ pulumi import gcp:healthcare/dataset:Dataset default {{location}}/{{name}}

```

func GetDataset

func GetDataset(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatasetState, opts ...pulumi.ResourceOption) (*Dataset, error)

GetDataset gets an existing Dataset resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDataset

func NewDataset(ctx *pulumi.Context,
	name string, args *DatasetArgs, opts ...pulumi.ResourceOption) (*Dataset, error)

NewDataset registers a new resource with the given unique name, arguments, and options.

func (*Dataset) ElementType

func (*Dataset) ElementType() reflect.Type

func (*Dataset) ToDatasetOutput

func (i *Dataset) ToDatasetOutput() DatasetOutput

func (*Dataset) ToDatasetOutputWithContext

func (i *Dataset) ToDatasetOutputWithContext(ctx context.Context) DatasetOutput

func (*Dataset) ToDatasetPtrOutput

func (i *Dataset) ToDatasetPtrOutput() DatasetPtrOutput

func (*Dataset) ToDatasetPtrOutputWithContext

func (i *Dataset) ToDatasetPtrOutputWithContext(ctx context.Context) DatasetPtrOutput

type DatasetArgs

type DatasetArgs struct {
	// The location for the Dataset.
	Location pulumi.StringInput
	// The resource name for the Dataset.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The default timezone used by this dataset. Must be a either a valid IANA time zone name such as
	// "America/New_York" or empty, which defaults to UTC. This is used for parsing times in resources
	// (e.g., HL7 messages) where no explicit timezone is specified.
	TimeZone pulumi.StringPtrInput
}

The set of arguments for constructing a Dataset resource.

func (DatasetArgs) ElementType

func (DatasetArgs) ElementType() reflect.Type

type DatasetArray

type DatasetArray []DatasetInput

func (DatasetArray) ElementType

func (DatasetArray) ElementType() reflect.Type

func (DatasetArray) ToDatasetArrayOutput

func (i DatasetArray) ToDatasetArrayOutput() DatasetArrayOutput

func (DatasetArray) ToDatasetArrayOutputWithContext

func (i DatasetArray) ToDatasetArrayOutputWithContext(ctx context.Context) DatasetArrayOutput

type DatasetArrayInput

type DatasetArrayInput interface {
	pulumi.Input

	ToDatasetArrayOutput() DatasetArrayOutput
	ToDatasetArrayOutputWithContext(context.Context) DatasetArrayOutput
}

DatasetArrayInput is an input type that accepts DatasetArray and DatasetArrayOutput values. You can construct a concrete instance of `DatasetArrayInput` via:

DatasetArray{ DatasetArgs{...} }

type DatasetArrayOutput

type DatasetArrayOutput struct{ *pulumi.OutputState }

func (DatasetArrayOutput) ElementType

func (DatasetArrayOutput) ElementType() reflect.Type

func (DatasetArrayOutput) Index

func (DatasetArrayOutput) ToDatasetArrayOutput

func (o DatasetArrayOutput) ToDatasetArrayOutput() DatasetArrayOutput

func (DatasetArrayOutput) ToDatasetArrayOutputWithContext

func (o DatasetArrayOutput) ToDatasetArrayOutputWithContext(ctx context.Context) DatasetArrayOutput

type DatasetIamBinding

type DatasetIamBinding struct {
	pulumi.CustomResourceState

	Condition DatasetIamBindingConditionPtrOutput `pulumi:"condition"`
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringOutput `pulumi:"datasetId"`
	// (Computed) The etag of the dataset's IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `healthcare.DatasetIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare dataset. Each of these resources serves a different use case:

* `healthcare.DatasetIamPolicy`: Authoritative. Sets the IAM policy for the dataset and replaces any existing policy already attached. * `healthcare.DatasetIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the dataset are preserved. * `healthcare.DatasetIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the dataset are preserved.

> **Note:** `healthcare.DatasetIamPolicy` **cannot** be used in conjunction with `healthcare.DatasetIamBinding` and `healthcare.DatasetIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.DatasetIamBinding` resources **can be** used in conjunction with `healthcare.DatasetIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_dataset\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewDatasetIamPolicy(ctx, "dataset", &healthcare.DatasetIamPolicyArgs{
			DatasetId:  pulumi.String("your-dataset-id"),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dataset\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDatasetIamBinding(ctx, "dataset", &healthcare.DatasetIamBindingArgs{
			DatasetId: pulumi.String("your-dataset-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dataset\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDatasetIamMember(ctx, "dataset", &healthcare.DatasetIamMemberArgs{
			DatasetId: pulumi.String("your-dataset-id"),
			Member:    pulumi.String("user:jane@example.com"),
			Role:      pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `dataset_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamBinding:DatasetIamBinding dataset_iam "your-project-id/location-name/dataset-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `dataset_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamBinding:DatasetIamBinding dataset_iam "your-project-id/location-name/dataset-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `dataset_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamBinding:DatasetIamBinding dataset_iam your-project-id/location-name/dataset-name

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetDatasetIamBinding

func GetDatasetIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatasetIamBindingState, opts ...pulumi.ResourceOption) (*DatasetIamBinding, error)

GetDatasetIamBinding gets an existing DatasetIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDatasetIamBinding

func NewDatasetIamBinding(ctx *pulumi.Context,
	name string, args *DatasetIamBindingArgs, opts ...pulumi.ResourceOption) (*DatasetIamBinding, error)

NewDatasetIamBinding registers a new resource with the given unique name, arguments, and options.

func (*DatasetIamBinding) ElementType

func (*DatasetIamBinding) ElementType() reflect.Type

func (*DatasetIamBinding) ToDatasetIamBindingOutput

func (i *DatasetIamBinding) ToDatasetIamBindingOutput() DatasetIamBindingOutput

func (*DatasetIamBinding) ToDatasetIamBindingOutputWithContext

func (i *DatasetIamBinding) ToDatasetIamBindingOutputWithContext(ctx context.Context) DatasetIamBindingOutput

func (*DatasetIamBinding) ToDatasetIamBindingPtrOutput

func (i *DatasetIamBinding) ToDatasetIamBindingPtrOutput() DatasetIamBindingPtrOutput

func (*DatasetIamBinding) ToDatasetIamBindingPtrOutputWithContext

func (i *DatasetIamBinding) ToDatasetIamBindingPtrOutputWithContext(ctx context.Context) DatasetIamBindingPtrOutput

type DatasetIamBindingArgs

type DatasetIamBindingArgs struct {
	Condition DatasetIamBindingConditionPtrInput
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringInput
	Members   pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.DatasetIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a DatasetIamBinding resource.

func (DatasetIamBindingArgs) ElementType

func (DatasetIamBindingArgs) ElementType() reflect.Type

type DatasetIamBindingArray

type DatasetIamBindingArray []DatasetIamBindingInput

func (DatasetIamBindingArray) ElementType

func (DatasetIamBindingArray) ElementType() reflect.Type

func (DatasetIamBindingArray) ToDatasetIamBindingArrayOutput

func (i DatasetIamBindingArray) ToDatasetIamBindingArrayOutput() DatasetIamBindingArrayOutput

func (DatasetIamBindingArray) ToDatasetIamBindingArrayOutputWithContext

func (i DatasetIamBindingArray) ToDatasetIamBindingArrayOutputWithContext(ctx context.Context) DatasetIamBindingArrayOutput

type DatasetIamBindingArrayInput

type DatasetIamBindingArrayInput interface {
	pulumi.Input

	ToDatasetIamBindingArrayOutput() DatasetIamBindingArrayOutput
	ToDatasetIamBindingArrayOutputWithContext(context.Context) DatasetIamBindingArrayOutput
}

DatasetIamBindingArrayInput is an input type that accepts DatasetIamBindingArray and DatasetIamBindingArrayOutput values. You can construct a concrete instance of `DatasetIamBindingArrayInput` via:

DatasetIamBindingArray{ DatasetIamBindingArgs{...} }

type DatasetIamBindingArrayOutput

type DatasetIamBindingArrayOutput struct{ *pulumi.OutputState }

func (DatasetIamBindingArrayOutput) ElementType

func (DatasetIamBindingArrayOutput) Index

func (DatasetIamBindingArrayOutput) ToDatasetIamBindingArrayOutput

func (o DatasetIamBindingArrayOutput) ToDatasetIamBindingArrayOutput() DatasetIamBindingArrayOutput

func (DatasetIamBindingArrayOutput) ToDatasetIamBindingArrayOutputWithContext

func (o DatasetIamBindingArrayOutput) ToDatasetIamBindingArrayOutputWithContext(ctx context.Context) DatasetIamBindingArrayOutput

type DatasetIamBindingCondition

type DatasetIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type DatasetIamBindingConditionArgs

type DatasetIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (DatasetIamBindingConditionArgs) ElementType

func (DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionOutput

func (i DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionOutput() DatasetIamBindingConditionOutput

func (DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionOutputWithContext

func (i DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionOutputWithContext(ctx context.Context) DatasetIamBindingConditionOutput

func (DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionPtrOutput

func (i DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionPtrOutput() DatasetIamBindingConditionPtrOutput

func (DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionPtrOutputWithContext

func (i DatasetIamBindingConditionArgs) ToDatasetIamBindingConditionPtrOutputWithContext(ctx context.Context) DatasetIamBindingConditionPtrOutput

type DatasetIamBindingConditionInput

type DatasetIamBindingConditionInput interface {
	pulumi.Input

	ToDatasetIamBindingConditionOutput() DatasetIamBindingConditionOutput
	ToDatasetIamBindingConditionOutputWithContext(context.Context) DatasetIamBindingConditionOutput
}

DatasetIamBindingConditionInput is an input type that accepts DatasetIamBindingConditionArgs and DatasetIamBindingConditionOutput values. You can construct a concrete instance of `DatasetIamBindingConditionInput` via:

DatasetIamBindingConditionArgs{...}

type DatasetIamBindingConditionOutput

type DatasetIamBindingConditionOutput struct{ *pulumi.OutputState }

func (DatasetIamBindingConditionOutput) Description

func (DatasetIamBindingConditionOutput) ElementType

func (DatasetIamBindingConditionOutput) Expression

func (DatasetIamBindingConditionOutput) Title

func (DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionOutput

func (o DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionOutput() DatasetIamBindingConditionOutput

func (DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionOutputWithContext

func (o DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionOutputWithContext(ctx context.Context) DatasetIamBindingConditionOutput

func (DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionPtrOutput

func (o DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionPtrOutput() DatasetIamBindingConditionPtrOutput

func (DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionPtrOutputWithContext

func (o DatasetIamBindingConditionOutput) ToDatasetIamBindingConditionPtrOutputWithContext(ctx context.Context) DatasetIamBindingConditionPtrOutput

type DatasetIamBindingConditionPtrInput

type DatasetIamBindingConditionPtrInput interface {
	pulumi.Input

	ToDatasetIamBindingConditionPtrOutput() DatasetIamBindingConditionPtrOutput
	ToDatasetIamBindingConditionPtrOutputWithContext(context.Context) DatasetIamBindingConditionPtrOutput
}

DatasetIamBindingConditionPtrInput is an input type that accepts DatasetIamBindingConditionArgs, DatasetIamBindingConditionPtr and DatasetIamBindingConditionPtrOutput values. You can construct a concrete instance of `DatasetIamBindingConditionPtrInput` via:

        DatasetIamBindingConditionArgs{...}

or:

        nil

type DatasetIamBindingConditionPtrOutput

type DatasetIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (DatasetIamBindingConditionPtrOutput) Description

func (DatasetIamBindingConditionPtrOutput) Elem

func (DatasetIamBindingConditionPtrOutput) ElementType

func (DatasetIamBindingConditionPtrOutput) Expression

func (DatasetIamBindingConditionPtrOutput) Title

func (DatasetIamBindingConditionPtrOutput) ToDatasetIamBindingConditionPtrOutput

func (o DatasetIamBindingConditionPtrOutput) ToDatasetIamBindingConditionPtrOutput() DatasetIamBindingConditionPtrOutput

func (DatasetIamBindingConditionPtrOutput) ToDatasetIamBindingConditionPtrOutputWithContext

func (o DatasetIamBindingConditionPtrOutput) ToDatasetIamBindingConditionPtrOutputWithContext(ctx context.Context) DatasetIamBindingConditionPtrOutput

type DatasetIamBindingInput

type DatasetIamBindingInput interface {
	pulumi.Input

	ToDatasetIamBindingOutput() DatasetIamBindingOutput
	ToDatasetIamBindingOutputWithContext(ctx context.Context) DatasetIamBindingOutput
}

type DatasetIamBindingMap

type DatasetIamBindingMap map[string]DatasetIamBindingInput

func (DatasetIamBindingMap) ElementType

func (DatasetIamBindingMap) ElementType() reflect.Type

func (DatasetIamBindingMap) ToDatasetIamBindingMapOutput

func (i DatasetIamBindingMap) ToDatasetIamBindingMapOutput() DatasetIamBindingMapOutput

func (DatasetIamBindingMap) ToDatasetIamBindingMapOutputWithContext

func (i DatasetIamBindingMap) ToDatasetIamBindingMapOutputWithContext(ctx context.Context) DatasetIamBindingMapOutput

type DatasetIamBindingMapInput

type DatasetIamBindingMapInput interface {
	pulumi.Input

	ToDatasetIamBindingMapOutput() DatasetIamBindingMapOutput
	ToDatasetIamBindingMapOutputWithContext(context.Context) DatasetIamBindingMapOutput
}

DatasetIamBindingMapInput is an input type that accepts DatasetIamBindingMap and DatasetIamBindingMapOutput values. You can construct a concrete instance of `DatasetIamBindingMapInput` via:

DatasetIamBindingMap{ "key": DatasetIamBindingArgs{...} }

type DatasetIamBindingMapOutput

type DatasetIamBindingMapOutput struct{ *pulumi.OutputState }

func (DatasetIamBindingMapOutput) ElementType

func (DatasetIamBindingMapOutput) ElementType() reflect.Type

func (DatasetIamBindingMapOutput) MapIndex

func (DatasetIamBindingMapOutput) ToDatasetIamBindingMapOutput

func (o DatasetIamBindingMapOutput) ToDatasetIamBindingMapOutput() DatasetIamBindingMapOutput

func (DatasetIamBindingMapOutput) ToDatasetIamBindingMapOutputWithContext

func (o DatasetIamBindingMapOutput) ToDatasetIamBindingMapOutputWithContext(ctx context.Context) DatasetIamBindingMapOutput

type DatasetIamBindingOutput

type DatasetIamBindingOutput struct{ *pulumi.OutputState }

func (DatasetIamBindingOutput) ElementType

func (DatasetIamBindingOutput) ElementType() reflect.Type

func (DatasetIamBindingOutput) ToDatasetIamBindingOutput

func (o DatasetIamBindingOutput) ToDatasetIamBindingOutput() DatasetIamBindingOutput

func (DatasetIamBindingOutput) ToDatasetIamBindingOutputWithContext

func (o DatasetIamBindingOutput) ToDatasetIamBindingOutputWithContext(ctx context.Context) DatasetIamBindingOutput

func (DatasetIamBindingOutput) ToDatasetIamBindingPtrOutput

func (o DatasetIamBindingOutput) ToDatasetIamBindingPtrOutput() DatasetIamBindingPtrOutput

func (DatasetIamBindingOutput) ToDatasetIamBindingPtrOutputWithContext

func (o DatasetIamBindingOutput) ToDatasetIamBindingPtrOutputWithContext(ctx context.Context) DatasetIamBindingPtrOutput

type DatasetIamBindingPtrInput

type DatasetIamBindingPtrInput interface {
	pulumi.Input

	ToDatasetIamBindingPtrOutput() DatasetIamBindingPtrOutput
	ToDatasetIamBindingPtrOutputWithContext(ctx context.Context) DatasetIamBindingPtrOutput
}

type DatasetIamBindingPtrOutput

type DatasetIamBindingPtrOutput struct{ *pulumi.OutputState }

func (DatasetIamBindingPtrOutput) Elem added in v5.21.0

func (DatasetIamBindingPtrOutput) ElementType

func (DatasetIamBindingPtrOutput) ElementType() reflect.Type

func (DatasetIamBindingPtrOutput) ToDatasetIamBindingPtrOutput

func (o DatasetIamBindingPtrOutput) ToDatasetIamBindingPtrOutput() DatasetIamBindingPtrOutput

func (DatasetIamBindingPtrOutput) ToDatasetIamBindingPtrOutputWithContext

func (o DatasetIamBindingPtrOutput) ToDatasetIamBindingPtrOutputWithContext(ctx context.Context) DatasetIamBindingPtrOutput

type DatasetIamBindingState

type DatasetIamBindingState struct {
	Condition DatasetIamBindingConditionPtrInput
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringPtrInput
	// (Computed) The etag of the dataset's IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.DatasetIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (DatasetIamBindingState) ElementType

func (DatasetIamBindingState) ElementType() reflect.Type

type DatasetIamMember

type DatasetIamMember struct {
	pulumi.CustomResourceState

	Condition DatasetIamMemberConditionPtrOutput `pulumi:"condition"`
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringOutput `pulumi:"datasetId"`
	// (Computed) The etag of the dataset's IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `healthcare.DatasetIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare dataset. Each of these resources serves a different use case:

* `healthcare.DatasetIamPolicy`: Authoritative. Sets the IAM policy for the dataset and replaces any existing policy already attached. * `healthcare.DatasetIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the dataset are preserved. * `healthcare.DatasetIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the dataset are preserved.

> **Note:** `healthcare.DatasetIamPolicy` **cannot** be used in conjunction with `healthcare.DatasetIamBinding` and `healthcare.DatasetIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.DatasetIamBinding` resources **can be** used in conjunction with `healthcare.DatasetIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_dataset\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewDatasetIamPolicy(ctx, "dataset", &healthcare.DatasetIamPolicyArgs{
			DatasetId:  pulumi.String("your-dataset-id"),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dataset\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDatasetIamBinding(ctx, "dataset", &healthcare.DatasetIamBindingArgs{
			DatasetId: pulumi.String("your-dataset-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dataset\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDatasetIamMember(ctx, "dataset", &healthcare.DatasetIamMemberArgs{
			DatasetId: pulumi.String("your-dataset-id"),
			Member:    pulumi.String("user:jane@example.com"),
			Role:      pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `dataset_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamMember:DatasetIamMember dataset_iam "your-project-id/location-name/dataset-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `dataset_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamMember:DatasetIamMember dataset_iam "your-project-id/location-name/dataset-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `dataset_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamMember:DatasetIamMember dataset_iam your-project-id/location-name/dataset-name

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetDatasetIamMember

func GetDatasetIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatasetIamMemberState, opts ...pulumi.ResourceOption) (*DatasetIamMember, error)

GetDatasetIamMember gets an existing DatasetIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDatasetIamMember

func NewDatasetIamMember(ctx *pulumi.Context,
	name string, args *DatasetIamMemberArgs, opts ...pulumi.ResourceOption) (*DatasetIamMember, error)

NewDatasetIamMember registers a new resource with the given unique name, arguments, and options.

func (*DatasetIamMember) ElementType

func (*DatasetIamMember) ElementType() reflect.Type

func (*DatasetIamMember) ToDatasetIamMemberOutput

func (i *DatasetIamMember) ToDatasetIamMemberOutput() DatasetIamMemberOutput

func (*DatasetIamMember) ToDatasetIamMemberOutputWithContext

func (i *DatasetIamMember) ToDatasetIamMemberOutputWithContext(ctx context.Context) DatasetIamMemberOutput

func (*DatasetIamMember) ToDatasetIamMemberPtrOutput

func (i *DatasetIamMember) ToDatasetIamMemberPtrOutput() DatasetIamMemberPtrOutput

func (*DatasetIamMember) ToDatasetIamMemberPtrOutputWithContext

func (i *DatasetIamMember) ToDatasetIamMemberPtrOutputWithContext(ctx context.Context) DatasetIamMemberPtrOutput

type DatasetIamMemberArgs

type DatasetIamMemberArgs struct {
	Condition DatasetIamMemberConditionPtrInput
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringInput
	Member    pulumi.StringInput
	// The role that should be applied. Only one
	// `healthcare.DatasetIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a DatasetIamMember resource.

func (DatasetIamMemberArgs) ElementType

func (DatasetIamMemberArgs) ElementType() reflect.Type

type DatasetIamMemberArray

type DatasetIamMemberArray []DatasetIamMemberInput

func (DatasetIamMemberArray) ElementType

func (DatasetIamMemberArray) ElementType() reflect.Type

func (DatasetIamMemberArray) ToDatasetIamMemberArrayOutput

func (i DatasetIamMemberArray) ToDatasetIamMemberArrayOutput() DatasetIamMemberArrayOutput

func (DatasetIamMemberArray) ToDatasetIamMemberArrayOutputWithContext

func (i DatasetIamMemberArray) ToDatasetIamMemberArrayOutputWithContext(ctx context.Context) DatasetIamMemberArrayOutput

type DatasetIamMemberArrayInput

type DatasetIamMemberArrayInput interface {
	pulumi.Input

	ToDatasetIamMemberArrayOutput() DatasetIamMemberArrayOutput
	ToDatasetIamMemberArrayOutputWithContext(context.Context) DatasetIamMemberArrayOutput
}

DatasetIamMemberArrayInput is an input type that accepts DatasetIamMemberArray and DatasetIamMemberArrayOutput values. You can construct a concrete instance of `DatasetIamMemberArrayInput` via:

DatasetIamMemberArray{ DatasetIamMemberArgs{...} }

type DatasetIamMemberArrayOutput

type DatasetIamMemberArrayOutput struct{ *pulumi.OutputState }

func (DatasetIamMemberArrayOutput) ElementType

func (DatasetIamMemberArrayOutput) Index

func (DatasetIamMemberArrayOutput) ToDatasetIamMemberArrayOutput

func (o DatasetIamMemberArrayOutput) ToDatasetIamMemberArrayOutput() DatasetIamMemberArrayOutput

func (DatasetIamMemberArrayOutput) ToDatasetIamMemberArrayOutputWithContext

func (o DatasetIamMemberArrayOutput) ToDatasetIamMemberArrayOutputWithContext(ctx context.Context) DatasetIamMemberArrayOutput

type DatasetIamMemberCondition

type DatasetIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type DatasetIamMemberConditionArgs

type DatasetIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (DatasetIamMemberConditionArgs) ElementType

func (DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionOutput

func (i DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionOutput() DatasetIamMemberConditionOutput

func (DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionOutputWithContext

func (i DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionOutputWithContext(ctx context.Context) DatasetIamMemberConditionOutput

func (DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionPtrOutput

func (i DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionPtrOutput() DatasetIamMemberConditionPtrOutput

func (DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionPtrOutputWithContext

func (i DatasetIamMemberConditionArgs) ToDatasetIamMemberConditionPtrOutputWithContext(ctx context.Context) DatasetIamMemberConditionPtrOutput

type DatasetIamMemberConditionInput

type DatasetIamMemberConditionInput interface {
	pulumi.Input

	ToDatasetIamMemberConditionOutput() DatasetIamMemberConditionOutput
	ToDatasetIamMemberConditionOutputWithContext(context.Context) DatasetIamMemberConditionOutput
}

DatasetIamMemberConditionInput is an input type that accepts DatasetIamMemberConditionArgs and DatasetIamMemberConditionOutput values. You can construct a concrete instance of `DatasetIamMemberConditionInput` via:

DatasetIamMemberConditionArgs{...}

type DatasetIamMemberConditionOutput

type DatasetIamMemberConditionOutput struct{ *pulumi.OutputState }

func (DatasetIamMemberConditionOutput) Description

func (DatasetIamMemberConditionOutput) ElementType

func (DatasetIamMemberConditionOutput) Expression

func (DatasetIamMemberConditionOutput) Title

func (DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionOutput

func (o DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionOutput() DatasetIamMemberConditionOutput

func (DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionOutputWithContext

func (o DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionOutputWithContext(ctx context.Context) DatasetIamMemberConditionOutput

func (DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionPtrOutput

func (o DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionPtrOutput() DatasetIamMemberConditionPtrOutput

func (DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionPtrOutputWithContext

func (o DatasetIamMemberConditionOutput) ToDatasetIamMemberConditionPtrOutputWithContext(ctx context.Context) DatasetIamMemberConditionPtrOutput

type DatasetIamMemberConditionPtrInput

type DatasetIamMemberConditionPtrInput interface {
	pulumi.Input

	ToDatasetIamMemberConditionPtrOutput() DatasetIamMemberConditionPtrOutput
	ToDatasetIamMemberConditionPtrOutputWithContext(context.Context) DatasetIamMemberConditionPtrOutput
}

DatasetIamMemberConditionPtrInput is an input type that accepts DatasetIamMemberConditionArgs, DatasetIamMemberConditionPtr and DatasetIamMemberConditionPtrOutput values. You can construct a concrete instance of `DatasetIamMemberConditionPtrInput` via:

        DatasetIamMemberConditionArgs{...}

or:

        nil

type DatasetIamMemberConditionPtrOutput

type DatasetIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (DatasetIamMemberConditionPtrOutput) Description

func (DatasetIamMemberConditionPtrOutput) Elem

func (DatasetIamMemberConditionPtrOutput) ElementType

func (DatasetIamMemberConditionPtrOutput) Expression

func (DatasetIamMemberConditionPtrOutput) Title

func (DatasetIamMemberConditionPtrOutput) ToDatasetIamMemberConditionPtrOutput

func (o DatasetIamMemberConditionPtrOutput) ToDatasetIamMemberConditionPtrOutput() DatasetIamMemberConditionPtrOutput

func (DatasetIamMemberConditionPtrOutput) ToDatasetIamMemberConditionPtrOutputWithContext

func (o DatasetIamMemberConditionPtrOutput) ToDatasetIamMemberConditionPtrOutputWithContext(ctx context.Context) DatasetIamMemberConditionPtrOutput

type DatasetIamMemberInput

type DatasetIamMemberInput interface {
	pulumi.Input

	ToDatasetIamMemberOutput() DatasetIamMemberOutput
	ToDatasetIamMemberOutputWithContext(ctx context.Context) DatasetIamMemberOutput
}

type DatasetIamMemberMap

type DatasetIamMemberMap map[string]DatasetIamMemberInput

func (DatasetIamMemberMap) ElementType

func (DatasetIamMemberMap) ElementType() reflect.Type

func (DatasetIamMemberMap) ToDatasetIamMemberMapOutput

func (i DatasetIamMemberMap) ToDatasetIamMemberMapOutput() DatasetIamMemberMapOutput

func (DatasetIamMemberMap) ToDatasetIamMemberMapOutputWithContext

func (i DatasetIamMemberMap) ToDatasetIamMemberMapOutputWithContext(ctx context.Context) DatasetIamMemberMapOutput

type DatasetIamMemberMapInput

type DatasetIamMemberMapInput interface {
	pulumi.Input

	ToDatasetIamMemberMapOutput() DatasetIamMemberMapOutput
	ToDatasetIamMemberMapOutputWithContext(context.Context) DatasetIamMemberMapOutput
}

DatasetIamMemberMapInput is an input type that accepts DatasetIamMemberMap and DatasetIamMemberMapOutput values. You can construct a concrete instance of `DatasetIamMemberMapInput` via:

DatasetIamMemberMap{ "key": DatasetIamMemberArgs{...} }

type DatasetIamMemberMapOutput

type DatasetIamMemberMapOutput struct{ *pulumi.OutputState }

func (DatasetIamMemberMapOutput) ElementType

func (DatasetIamMemberMapOutput) ElementType() reflect.Type

func (DatasetIamMemberMapOutput) MapIndex

func (DatasetIamMemberMapOutput) ToDatasetIamMemberMapOutput

func (o DatasetIamMemberMapOutput) ToDatasetIamMemberMapOutput() DatasetIamMemberMapOutput

func (DatasetIamMemberMapOutput) ToDatasetIamMemberMapOutputWithContext

func (o DatasetIamMemberMapOutput) ToDatasetIamMemberMapOutputWithContext(ctx context.Context) DatasetIamMemberMapOutput

type DatasetIamMemberOutput

type DatasetIamMemberOutput struct{ *pulumi.OutputState }

func (DatasetIamMemberOutput) ElementType

func (DatasetIamMemberOutput) ElementType() reflect.Type

func (DatasetIamMemberOutput) ToDatasetIamMemberOutput

func (o DatasetIamMemberOutput) ToDatasetIamMemberOutput() DatasetIamMemberOutput

func (DatasetIamMemberOutput) ToDatasetIamMemberOutputWithContext

func (o DatasetIamMemberOutput) ToDatasetIamMemberOutputWithContext(ctx context.Context) DatasetIamMemberOutput

func (DatasetIamMemberOutput) ToDatasetIamMemberPtrOutput

func (o DatasetIamMemberOutput) ToDatasetIamMemberPtrOutput() DatasetIamMemberPtrOutput

func (DatasetIamMemberOutput) ToDatasetIamMemberPtrOutputWithContext

func (o DatasetIamMemberOutput) ToDatasetIamMemberPtrOutputWithContext(ctx context.Context) DatasetIamMemberPtrOutput

type DatasetIamMemberPtrInput

type DatasetIamMemberPtrInput interface {
	pulumi.Input

	ToDatasetIamMemberPtrOutput() DatasetIamMemberPtrOutput
	ToDatasetIamMemberPtrOutputWithContext(ctx context.Context) DatasetIamMemberPtrOutput
}

type DatasetIamMemberPtrOutput

type DatasetIamMemberPtrOutput struct{ *pulumi.OutputState }

func (DatasetIamMemberPtrOutput) Elem added in v5.21.0

func (DatasetIamMemberPtrOutput) ElementType

func (DatasetIamMemberPtrOutput) ElementType() reflect.Type

func (DatasetIamMemberPtrOutput) ToDatasetIamMemberPtrOutput

func (o DatasetIamMemberPtrOutput) ToDatasetIamMemberPtrOutput() DatasetIamMemberPtrOutput

func (DatasetIamMemberPtrOutput) ToDatasetIamMemberPtrOutputWithContext

func (o DatasetIamMemberPtrOutput) ToDatasetIamMemberPtrOutputWithContext(ctx context.Context) DatasetIamMemberPtrOutput

type DatasetIamMemberState

type DatasetIamMemberState struct {
	Condition DatasetIamMemberConditionPtrInput
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringPtrInput
	// (Computed) The etag of the dataset's IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `healthcare.DatasetIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (DatasetIamMemberState) ElementType

func (DatasetIamMemberState) ElementType() reflect.Type

type DatasetIamPolicy

type DatasetIamPolicy struct {
	pulumi.CustomResourceState

	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringOutput `pulumi:"datasetId"`
	// (Computed) The etag of the dataset's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Three different resources help you manage your IAM policy for Healthcare dataset. Each of these resources serves a different use case:

* `healthcare.DatasetIamPolicy`: Authoritative. Sets the IAM policy for the dataset and replaces any existing policy already attached. * `healthcare.DatasetIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the dataset are preserved. * `healthcare.DatasetIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the dataset are preserved.

> **Note:** `healthcare.DatasetIamPolicy` **cannot** be used in conjunction with `healthcare.DatasetIamBinding` and `healthcare.DatasetIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.DatasetIamBinding` resources **can be** used in conjunction with `healthcare.DatasetIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_dataset\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewDatasetIamPolicy(ctx, "dataset", &healthcare.DatasetIamPolicyArgs{
			DatasetId:  pulumi.String("your-dataset-id"),
			PolicyData: pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dataset\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDatasetIamBinding(ctx, "dataset", &healthcare.DatasetIamBindingArgs{
			DatasetId: pulumi.String("your-dataset-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dataset\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDatasetIamMember(ctx, "dataset", &healthcare.DatasetIamMemberArgs{
			DatasetId: pulumi.String("your-dataset-id"),
			Member:    pulumi.String("user:jane@example.com"),
			Role:      pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `dataset_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamPolicy:DatasetIamPolicy dataset_iam "your-project-id/location-name/dataset-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `dataset_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamPolicy:DatasetIamPolicy dataset_iam "your-project-id/location-name/dataset-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `dataset_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/datasetIamPolicy:DatasetIamPolicy dataset_iam your-project-id/location-name/dataset-name

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetDatasetIamPolicy

func GetDatasetIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatasetIamPolicyState, opts ...pulumi.ResourceOption) (*DatasetIamPolicy, error)

GetDatasetIamPolicy gets an existing DatasetIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDatasetIamPolicy

func NewDatasetIamPolicy(ctx *pulumi.Context,
	name string, args *DatasetIamPolicyArgs, opts ...pulumi.ResourceOption) (*DatasetIamPolicy, error)

NewDatasetIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*DatasetIamPolicy) ElementType

func (*DatasetIamPolicy) ElementType() reflect.Type

func (*DatasetIamPolicy) ToDatasetIamPolicyOutput

func (i *DatasetIamPolicy) ToDatasetIamPolicyOutput() DatasetIamPolicyOutput

func (*DatasetIamPolicy) ToDatasetIamPolicyOutputWithContext

func (i *DatasetIamPolicy) ToDatasetIamPolicyOutputWithContext(ctx context.Context) DatasetIamPolicyOutput

func (*DatasetIamPolicy) ToDatasetIamPolicyPtrOutput

func (i *DatasetIamPolicy) ToDatasetIamPolicyPtrOutput() DatasetIamPolicyPtrOutput

func (*DatasetIamPolicy) ToDatasetIamPolicyPtrOutputWithContext

func (i *DatasetIamPolicy) ToDatasetIamPolicyPtrOutputWithContext(ctx context.Context) DatasetIamPolicyPtrOutput

type DatasetIamPolicyArgs

type DatasetIamPolicyArgs struct {
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a DatasetIamPolicy resource.

func (DatasetIamPolicyArgs) ElementType

func (DatasetIamPolicyArgs) ElementType() reflect.Type

type DatasetIamPolicyArray

type DatasetIamPolicyArray []DatasetIamPolicyInput

func (DatasetIamPolicyArray) ElementType

func (DatasetIamPolicyArray) ElementType() reflect.Type

func (DatasetIamPolicyArray) ToDatasetIamPolicyArrayOutput

func (i DatasetIamPolicyArray) ToDatasetIamPolicyArrayOutput() DatasetIamPolicyArrayOutput

func (DatasetIamPolicyArray) ToDatasetIamPolicyArrayOutputWithContext

func (i DatasetIamPolicyArray) ToDatasetIamPolicyArrayOutputWithContext(ctx context.Context) DatasetIamPolicyArrayOutput

type DatasetIamPolicyArrayInput

type DatasetIamPolicyArrayInput interface {
	pulumi.Input

	ToDatasetIamPolicyArrayOutput() DatasetIamPolicyArrayOutput
	ToDatasetIamPolicyArrayOutputWithContext(context.Context) DatasetIamPolicyArrayOutput
}

DatasetIamPolicyArrayInput is an input type that accepts DatasetIamPolicyArray and DatasetIamPolicyArrayOutput values. You can construct a concrete instance of `DatasetIamPolicyArrayInput` via:

DatasetIamPolicyArray{ DatasetIamPolicyArgs{...} }

type DatasetIamPolicyArrayOutput

type DatasetIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (DatasetIamPolicyArrayOutput) ElementType

func (DatasetIamPolicyArrayOutput) Index

func (DatasetIamPolicyArrayOutput) ToDatasetIamPolicyArrayOutput

func (o DatasetIamPolicyArrayOutput) ToDatasetIamPolicyArrayOutput() DatasetIamPolicyArrayOutput

func (DatasetIamPolicyArrayOutput) ToDatasetIamPolicyArrayOutputWithContext

func (o DatasetIamPolicyArrayOutput) ToDatasetIamPolicyArrayOutputWithContext(ctx context.Context) DatasetIamPolicyArrayOutput

type DatasetIamPolicyInput

type DatasetIamPolicyInput interface {
	pulumi.Input

	ToDatasetIamPolicyOutput() DatasetIamPolicyOutput
	ToDatasetIamPolicyOutputWithContext(ctx context.Context) DatasetIamPolicyOutput
}

type DatasetIamPolicyMap

type DatasetIamPolicyMap map[string]DatasetIamPolicyInput

func (DatasetIamPolicyMap) ElementType

func (DatasetIamPolicyMap) ElementType() reflect.Type

func (DatasetIamPolicyMap) ToDatasetIamPolicyMapOutput

func (i DatasetIamPolicyMap) ToDatasetIamPolicyMapOutput() DatasetIamPolicyMapOutput

func (DatasetIamPolicyMap) ToDatasetIamPolicyMapOutputWithContext

func (i DatasetIamPolicyMap) ToDatasetIamPolicyMapOutputWithContext(ctx context.Context) DatasetIamPolicyMapOutput

type DatasetIamPolicyMapInput

type DatasetIamPolicyMapInput interface {
	pulumi.Input

	ToDatasetIamPolicyMapOutput() DatasetIamPolicyMapOutput
	ToDatasetIamPolicyMapOutputWithContext(context.Context) DatasetIamPolicyMapOutput
}

DatasetIamPolicyMapInput is an input type that accepts DatasetIamPolicyMap and DatasetIamPolicyMapOutput values. You can construct a concrete instance of `DatasetIamPolicyMapInput` via:

DatasetIamPolicyMap{ "key": DatasetIamPolicyArgs{...} }

type DatasetIamPolicyMapOutput

type DatasetIamPolicyMapOutput struct{ *pulumi.OutputState }

func (DatasetIamPolicyMapOutput) ElementType

func (DatasetIamPolicyMapOutput) ElementType() reflect.Type

func (DatasetIamPolicyMapOutput) MapIndex

func (DatasetIamPolicyMapOutput) ToDatasetIamPolicyMapOutput

func (o DatasetIamPolicyMapOutput) ToDatasetIamPolicyMapOutput() DatasetIamPolicyMapOutput

func (DatasetIamPolicyMapOutput) ToDatasetIamPolicyMapOutputWithContext

func (o DatasetIamPolicyMapOutput) ToDatasetIamPolicyMapOutputWithContext(ctx context.Context) DatasetIamPolicyMapOutput

type DatasetIamPolicyOutput

type DatasetIamPolicyOutput struct{ *pulumi.OutputState }

func (DatasetIamPolicyOutput) ElementType

func (DatasetIamPolicyOutput) ElementType() reflect.Type

func (DatasetIamPolicyOutput) ToDatasetIamPolicyOutput

func (o DatasetIamPolicyOutput) ToDatasetIamPolicyOutput() DatasetIamPolicyOutput

func (DatasetIamPolicyOutput) ToDatasetIamPolicyOutputWithContext

func (o DatasetIamPolicyOutput) ToDatasetIamPolicyOutputWithContext(ctx context.Context) DatasetIamPolicyOutput

func (DatasetIamPolicyOutput) ToDatasetIamPolicyPtrOutput

func (o DatasetIamPolicyOutput) ToDatasetIamPolicyPtrOutput() DatasetIamPolicyPtrOutput

func (DatasetIamPolicyOutput) ToDatasetIamPolicyPtrOutputWithContext

func (o DatasetIamPolicyOutput) ToDatasetIamPolicyPtrOutputWithContext(ctx context.Context) DatasetIamPolicyPtrOutput

type DatasetIamPolicyPtrInput

type DatasetIamPolicyPtrInput interface {
	pulumi.Input

	ToDatasetIamPolicyPtrOutput() DatasetIamPolicyPtrOutput
	ToDatasetIamPolicyPtrOutputWithContext(ctx context.Context) DatasetIamPolicyPtrOutput
}

type DatasetIamPolicyPtrOutput

type DatasetIamPolicyPtrOutput struct{ *pulumi.OutputState }

func (DatasetIamPolicyPtrOutput) Elem added in v5.21.0

func (DatasetIamPolicyPtrOutput) ElementType

func (DatasetIamPolicyPtrOutput) ElementType() reflect.Type

func (DatasetIamPolicyPtrOutput) ToDatasetIamPolicyPtrOutput

func (o DatasetIamPolicyPtrOutput) ToDatasetIamPolicyPtrOutput() DatasetIamPolicyPtrOutput

func (DatasetIamPolicyPtrOutput) ToDatasetIamPolicyPtrOutputWithContext

func (o DatasetIamPolicyPtrOutput) ToDatasetIamPolicyPtrOutputWithContext(ctx context.Context) DatasetIamPolicyPtrOutput

type DatasetIamPolicyState

type DatasetIamPolicyState struct {
	// The dataset ID, in the form
	// `{project_id}/{location_name}/{dataset_name}` or
	// `{location_name}/{dataset_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DatasetId pulumi.StringPtrInput
	// (Computed) The etag of the dataset's IAM policy.
	Etag pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
}

func (DatasetIamPolicyState) ElementType

func (DatasetIamPolicyState) ElementType() reflect.Type

type DatasetInput

type DatasetInput interface {
	pulumi.Input

	ToDatasetOutput() DatasetOutput
	ToDatasetOutputWithContext(ctx context.Context) DatasetOutput
}

type DatasetMap

type DatasetMap map[string]DatasetInput

func (DatasetMap) ElementType

func (DatasetMap) ElementType() reflect.Type

func (DatasetMap) ToDatasetMapOutput

func (i DatasetMap) ToDatasetMapOutput() DatasetMapOutput

func (DatasetMap) ToDatasetMapOutputWithContext

func (i DatasetMap) ToDatasetMapOutputWithContext(ctx context.Context) DatasetMapOutput

type DatasetMapInput

type DatasetMapInput interface {
	pulumi.Input

	ToDatasetMapOutput() DatasetMapOutput
	ToDatasetMapOutputWithContext(context.Context) DatasetMapOutput
}

DatasetMapInput is an input type that accepts DatasetMap and DatasetMapOutput values. You can construct a concrete instance of `DatasetMapInput` via:

DatasetMap{ "key": DatasetArgs{...} }

type DatasetMapOutput

type DatasetMapOutput struct{ *pulumi.OutputState }

func (DatasetMapOutput) ElementType

func (DatasetMapOutput) ElementType() reflect.Type

func (DatasetMapOutput) MapIndex

func (DatasetMapOutput) ToDatasetMapOutput

func (o DatasetMapOutput) ToDatasetMapOutput() DatasetMapOutput

func (DatasetMapOutput) ToDatasetMapOutputWithContext

func (o DatasetMapOutput) ToDatasetMapOutputWithContext(ctx context.Context) DatasetMapOutput

type DatasetOutput

type DatasetOutput struct{ *pulumi.OutputState }

func (DatasetOutput) ElementType

func (DatasetOutput) ElementType() reflect.Type

func (DatasetOutput) ToDatasetOutput

func (o DatasetOutput) ToDatasetOutput() DatasetOutput

func (DatasetOutput) ToDatasetOutputWithContext

func (o DatasetOutput) ToDatasetOutputWithContext(ctx context.Context) DatasetOutput

func (DatasetOutput) ToDatasetPtrOutput

func (o DatasetOutput) ToDatasetPtrOutput() DatasetPtrOutput

func (DatasetOutput) ToDatasetPtrOutputWithContext

func (o DatasetOutput) ToDatasetPtrOutputWithContext(ctx context.Context) DatasetPtrOutput

type DatasetPtrInput

type DatasetPtrInput interface {
	pulumi.Input

	ToDatasetPtrOutput() DatasetPtrOutput
	ToDatasetPtrOutputWithContext(ctx context.Context) DatasetPtrOutput
}

type DatasetPtrOutput

type DatasetPtrOutput struct{ *pulumi.OutputState }

func (DatasetPtrOutput) Elem added in v5.21.0

func (DatasetPtrOutput) ElementType

func (DatasetPtrOutput) ElementType() reflect.Type

func (DatasetPtrOutput) ToDatasetPtrOutput

func (o DatasetPtrOutput) ToDatasetPtrOutput() DatasetPtrOutput

func (DatasetPtrOutput) ToDatasetPtrOutputWithContext

func (o DatasetPtrOutput) ToDatasetPtrOutputWithContext(ctx context.Context) DatasetPtrOutput

type DatasetState

type DatasetState struct {
	// The location for the Dataset.
	Location pulumi.StringPtrInput
	// The resource name for the Dataset.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The fully qualified name of this dataset
	SelfLink pulumi.StringPtrInput
	// The default timezone used by this dataset. Must be a either a valid IANA time zone name such as
	// "America/New_York" or empty, which defaults to UTC. This is used for parsing times in resources
	// (e.g., HL7 messages) where no explicit timezone is specified.
	TimeZone pulumi.StringPtrInput
}

func (DatasetState) ElementType

func (DatasetState) ElementType() reflect.Type

type DicomStore

type DicomStore struct {
	pulumi.CustomResourceState

	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// User-supplied key-value pairs used to organize DICOM stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The resource name for the DicomStore.
	// ** Changing this property may recreate the Dicom store (removing all data) **
	Name pulumi.StringOutput `pulumi:"name"`
	// A nested object resource
	// Structure is documented below.
	NotificationConfig DicomStoreNotificationConfigPtrOutput `pulumi:"notificationConfig"`
	// The fully qualified name of this dataset
	SelfLink pulumi.StringOutput `pulumi:"selfLink"`
	// To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store.
	// streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset.
	// Structure is documented below.
	StreamConfigs DicomStoreStreamConfigArrayOutput `pulumi:"streamConfigs"`
}

A DicomStore is a datastore inside a Healthcare dataset that conforms to the DICOM (https://www.dicomstandard.org/about/) standard for Healthcare information exchange

To get more information about DicomStore, see:

* [API documentation](https://cloud.google.com/healthcare/docs/reference/rest/v1/projects.locations.datasets.dicomStores) * How-to Guides

## Example Usage ### Healthcare Dicom Store Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := pubsub.NewTopic(ctx, "topic", nil)
		if err != nil {
			return err
		}
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStore(ctx, "_default", &healthcare.DicomStoreArgs{
			Dataset: dataset.ID(),
			NotificationConfig: &healthcare.DicomStoreNotificationConfigArgs{
				PubsubTopic: topic.ID(),
			},
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Healthcare Dicom Store Bq Stream

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/bigquery"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := pubsub.NewTopic(ctx, "topic", nil, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		bqDataset, err := bigquery.NewDataset(ctx, "bqDataset", &bigquery.DatasetArgs{
			DatasetId:               pulumi.String("dicom_bq_ds"),
			FriendlyName:            pulumi.String("test"),
			Description:             pulumi.String("This is a test description"),
			Location:                pulumi.String("US"),
			DeleteContentsOnDestroy: pulumi.Bool(true),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		bqTable, err := bigquery.NewTable(ctx, "bqTable", &bigquery.TableArgs{
			DeletionProtection: pulumi.Bool(false),
			DatasetId:          bqDataset.DatasetId,
			TableId:            pulumi.String("dicom_bq_tb"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStore(ctx, "_default", &healthcare.DicomStoreArgs{
			Dataset: dataset.ID(),
			NotificationConfig: &healthcare.DicomStoreNotificationConfigArgs{
				PubsubTopic: topic.ID(),
			},
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
			StreamConfigs: healthcare.DicomStoreStreamConfigArray{
				&healthcare.DicomStoreStreamConfigArgs{
					BigqueryDestination: &healthcare.DicomStoreStreamConfigBigqueryDestinationArgs{
						TableUri: pulumi.All(bqDataset.Project, bqDataset.DatasetId, bqTable.TableId).ApplyT(func(_args []interface{}) (string, error) {
							project := _args[0].(string)
							datasetId := _args[1].(string)
							tableId := _args[2].(string)
							return fmt.Sprintf("%v%v%v%v%v%v", "bq://", project, ".", datasetId, ".", tableId), nil
						}).(pulumi.StringOutput),
					},
				},
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DicomStore can be imported using any of these accepted formats

```sh

$ pulumi import gcp:healthcare/dicomStore:DicomStore default {{dataset}}/dicomStores/{{name}}

```

```sh

$ pulumi import gcp:healthcare/dicomStore:DicomStore default {{dataset}}/{{name}}

```

func GetDicomStore

func GetDicomStore(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DicomStoreState, opts ...pulumi.ResourceOption) (*DicomStore, error)

GetDicomStore gets an existing DicomStore resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDicomStore

func NewDicomStore(ctx *pulumi.Context,
	name string, args *DicomStoreArgs, opts ...pulumi.ResourceOption) (*DicomStore, error)

NewDicomStore registers a new resource with the given unique name, arguments, and options.

func (*DicomStore) ElementType

func (*DicomStore) ElementType() reflect.Type

func (*DicomStore) ToDicomStoreOutput

func (i *DicomStore) ToDicomStoreOutput() DicomStoreOutput

func (*DicomStore) ToDicomStoreOutputWithContext

func (i *DicomStore) ToDicomStoreOutputWithContext(ctx context.Context) DicomStoreOutput

func (*DicomStore) ToDicomStorePtrOutput

func (i *DicomStore) ToDicomStorePtrOutput() DicomStorePtrOutput

func (*DicomStore) ToDicomStorePtrOutputWithContext

func (i *DicomStore) ToDicomStorePtrOutputWithContext(ctx context.Context) DicomStorePtrOutput

type DicomStoreArgs

type DicomStoreArgs struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringInput
	// User-supplied key-value pairs used to organize DICOM stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The resource name for the DicomStore.
	// ** Changing this property may recreate the Dicom store (removing all data) **
	Name pulumi.StringPtrInput
	// A nested object resource
	// Structure is documented below.
	NotificationConfig DicomStoreNotificationConfigPtrInput
	// To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store.
	// streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset.
	// Structure is documented below.
	StreamConfigs DicomStoreStreamConfigArrayInput
}

The set of arguments for constructing a DicomStore resource.

func (DicomStoreArgs) ElementType

func (DicomStoreArgs) ElementType() reflect.Type

type DicomStoreArray

type DicomStoreArray []DicomStoreInput

func (DicomStoreArray) ElementType

func (DicomStoreArray) ElementType() reflect.Type

func (DicomStoreArray) ToDicomStoreArrayOutput

func (i DicomStoreArray) ToDicomStoreArrayOutput() DicomStoreArrayOutput

func (DicomStoreArray) ToDicomStoreArrayOutputWithContext

func (i DicomStoreArray) ToDicomStoreArrayOutputWithContext(ctx context.Context) DicomStoreArrayOutput

type DicomStoreArrayInput

type DicomStoreArrayInput interface {
	pulumi.Input

	ToDicomStoreArrayOutput() DicomStoreArrayOutput
	ToDicomStoreArrayOutputWithContext(context.Context) DicomStoreArrayOutput
}

DicomStoreArrayInput is an input type that accepts DicomStoreArray and DicomStoreArrayOutput values. You can construct a concrete instance of `DicomStoreArrayInput` via:

DicomStoreArray{ DicomStoreArgs{...} }

type DicomStoreArrayOutput

type DicomStoreArrayOutput struct{ *pulumi.OutputState }

func (DicomStoreArrayOutput) ElementType

func (DicomStoreArrayOutput) ElementType() reflect.Type

func (DicomStoreArrayOutput) Index

func (DicomStoreArrayOutput) ToDicomStoreArrayOutput

func (o DicomStoreArrayOutput) ToDicomStoreArrayOutput() DicomStoreArrayOutput

func (DicomStoreArrayOutput) ToDicomStoreArrayOutputWithContext

func (o DicomStoreArrayOutput) ToDicomStoreArrayOutputWithContext(ctx context.Context) DicomStoreArrayOutput

type DicomStoreIamBinding

type DicomStoreIamBinding struct {
	pulumi.CustomResourceState

	Condition DicomStoreIamBindingConditionPtrOutput `pulumi:"condition"`
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringOutput `pulumi:"dicomStoreId"`
	// (Computed) The etag of the DICOM store's IAM policy.
	Etag    pulumi.StringOutput      `pulumi:"etag"`
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `healthcare.DicomStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare DICOM store. Each of these resources serves a different use case:

* `healthcare.DicomStoreIamPolicy`: Authoritative. Sets the IAM policy for the DICOM store and replaces any existing policy already attached. * `healthcare.DicomStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the DICOM store are preserved. * `healthcare.DicomStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the DICOM store are preserved.

> **Note:** `healthcare.DicomStoreIamPolicy` **cannot** be used in conjunction with `healthcare.DicomStoreIamBinding` and `healthcare.DicomStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.DicomStoreIamBinding` resources **can be** used in conjunction with `healthcare.DicomStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_dicom\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStoreIamPolicy(ctx, "dicomStore", &healthcare.DicomStoreIamPolicyArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dicom\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDicomStoreIamBinding(ctx, "dicomStore", &healthcare.DicomStoreIamBindingArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dicom\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDicomStoreIamMember(ctx, "dicomStore", &healthcare.DicomStoreIamMemberArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			Member:       pulumi.String("user:jane@example.com"),
			Role:         pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `dicom_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamBinding:DicomStoreIamBinding dicom_store_iam "your-project-id/location-name/dataset-name/dicom-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `dicom_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamBinding:DicomStoreIamBinding dicom_store_iam "your-project-id/location-name/dataset-name/dicom-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `dicom_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamBinding:DicomStoreIamBinding dicom_store_iam your-project-id/location-name/dataset-name/dicom-store-name

```

func GetDicomStoreIamBinding

func GetDicomStoreIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DicomStoreIamBindingState, opts ...pulumi.ResourceOption) (*DicomStoreIamBinding, error)

GetDicomStoreIamBinding gets an existing DicomStoreIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDicomStoreIamBinding

func NewDicomStoreIamBinding(ctx *pulumi.Context,
	name string, args *DicomStoreIamBindingArgs, opts ...pulumi.ResourceOption) (*DicomStoreIamBinding, error)

NewDicomStoreIamBinding registers a new resource with the given unique name, arguments, and options.

func (*DicomStoreIamBinding) ElementType

func (*DicomStoreIamBinding) ElementType() reflect.Type

func (*DicomStoreIamBinding) ToDicomStoreIamBindingOutput

func (i *DicomStoreIamBinding) ToDicomStoreIamBindingOutput() DicomStoreIamBindingOutput

func (*DicomStoreIamBinding) ToDicomStoreIamBindingOutputWithContext

func (i *DicomStoreIamBinding) ToDicomStoreIamBindingOutputWithContext(ctx context.Context) DicomStoreIamBindingOutput

func (*DicomStoreIamBinding) ToDicomStoreIamBindingPtrOutput

func (i *DicomStoreIamBinding) ToDicomStoreIamBindingPtrOutput() DicomStoreIamBindingPtrOutput

func (*DicomStoreIamBinding) ToDicomStoreIamBindingPtrOutputWithContext

func (i *DicomStoreIamBinding) ToDicomStoreIamBindingPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingPtrOutput

type DicomStoreIamBindingArgs

type DicomStoreIamBindingArgs struct {
	Condition DicomStoreIamBindingConditionPtrInput
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringInput
	Members      pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.DicomStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a DicomStoreIamBinding resource.

func (DicomStoreIamBindingArgs) ElementType

func (DicomStoreIamBindingArgs) ElementType() reflect.Type

type DicomStoreIamBindingArray

type DicomStoreIamBindingArray []DicomStoreIamBindingInput

func (DicomStoreIamBindingArray) ElementType

func (DicomStoreIamBindingArray) ElementType() reflect.Type

func (DicomStoreIamBindingArray) ToDicomStoreIamBindingArrayOutput

func (i DicomStoreIamBindingArray) ToDicomStoreIamBindingArrayOutput() DicomStoreIamBindingArrayOutput

func (DicomStoreIamBindingArray) ToDicomStoreIamBindingArrayOutputWithContext

func (i DicomStoreIamBindingArray) ToDicomStoreIamBindingArrayOutputWithContext(ctx context.Context) DicomStoreIamBindingArrayOutput

type DicomStoreIamBindingArrayInput

type DicomStoreIamBindingArrayInput interface {
	pulumi.Input

	ToDicomStoreIamBindingArrayOutput() DicomStoreIamBindingArrayOutput
	ToDicomStoreIamBindingArrayOutputWithContext(context.Context) DicomStoreIamBindingArrayOutput
}

DicomStoreIamBindingArrayInput is an input type that accepts DicomStoreIamBindingArray and DicomStoreIamBindingArrayOutput values. You can construct a concrete instance of `DicomStoreIamBindingArrayInput` via:

DicomStoreIamBindingArray{ DicomStoreIamBindingArgs{...} }

type DicomStoreIamBindingArrayOutput

type DicomStoreIamBindingArrayOutput struct{ *pulumi.OutputState }

func (DicomStoreIamBindingArrayOutput) ElementType

func (DicomStoreIamBindingArrayOutput) Index

func (DicomStoreIamBindingArrayOutput) ToDicomStoreIamBindingArrayOutput

func (o DicomStoreIamBindingArrayOutput) ToDicomStoreIamBindingArrayOutput() DicomStoreIamBindingArrayOutput

func (DicomStoreIamBindingArrayOutput) ToDicomStoreIamBindingArrayOutputWithContext

func (o DicomStoreIamBindingArrayOutput) ToDicomStoreIamBindingArrayOutputWithContext(ctx context.Context) DicomStoreIamBindingArrayOutput

type DicomStoreIamBindingCondition

type DicomStoreIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type DicomStoreIamBindingConditionArgs

type DicomStoreIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (DicomStoreIamBindingConditionArgs) ElementType

func (DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionOutput

func (i DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionOutput() DicomStoreIamBindingConditionOutput

func (DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionOutputWithContext

func (i DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionOutputWithContext(ctx context.Context) DicomStoreIamBindingConditionOutput

func (DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionPtrOutput

func (i DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionPtrOutput() DicomStoreIamBindingConditionPtrOutput

func (DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionPtrOutputWithContext

func (i DicomStoreIamBindingConditionArgs) ToDicomStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingConditionPtrOutput

type DicomStoreIamBindingConditionInput

type DicomStoreIamBindingConditionInput interface {
	pulumi.Input

	ToDicomStoreIamBindingConditionOutput() DicomStoreIamBindingConditionOutput
	ToDicomStoreIamBindingConditionOutputWithContext(context.Context) DicomStoreIamBindingConditionOutput
}

DicomStoreIamBindingConditionInput is an input type that accepts DicomStoreIamBindingConditionArgs and DicomStoreIamBindingConditionOutput values. You can construct a concrete instance of `DicomStoreIamBindingConditionInput` via:

DicomStoreIamBindingConditionArgs{...}

type DicomStoreIamBindingConditionOutput

type DicomStoreIamBindingConditionOutput struct{ *pulumi.OutputState }

func (DicomStoreIamBindingConditionOutput) Description

func (DicomStoreIamBindingConditionOutput) ElementType

func (DicomStoreIamBindingConditionOutput) Expression

func (DicomStoreIamBindingConditionOutput) Title

func (DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionOutput

func (o DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionOutput() DicomStoreIamBindingConditionOutput

func (DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionOutputWithContext

func (o DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionOutputWithContext(ctx context.Context) DicomStoreIamBindingConditionOutput

func (DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionPtrOutput

func (o DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionPtrOutput() DicomStoreIamBindingConditionPtrOutput

func (DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionPtrOutputWithContext

func (o DicomStoreIamBindingConditionOutput) ToDicomStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingConditionPtrOutput

type DicomStoreIamBindingConditionPtrInput

type DicomStoreIamBindingConditionPtrInput interface {
	pulumi.Input

	ToDicomStoreIamBindingConditionPtrOutput() DicomStoreIamBindingConditionPtrOutput
	ToDicomStoreIamBindingConditionPtrOutputWithContext(context.Context) DicomStoreIamBindingConditionPtrOutput
}

DicomStoreIamBindingConditionPtrInput is an input type that accepts DicomStoreIamBindingConditionArgs, DicomStoreIamBindingConditionPtr and DicomStoreIamBindingConditionPtrOutput values. You can construct a concrete instance of `DicomStoreIamBindingConditionPtrInput` via:

        DicomStoreIamBindingConditionArgs{...}

or:

        nil

type DicomStoreIamBindingConditionPtrOutput

type DicomStoreIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (DicomStoreIamBindingConditionPtrOutput) Description

func (DicomStoreIamBindingConditionPtrOutput) Elem

func (DicomStoreIamBindingConditionPtrOutput) ElementType

func (DicomStoreIamBindingConditionPtrOutput) Expression

func (DicomStoreIamBindingConditionPtrOutput) Title

func (DicomStoreIamBindingConditionPtrOutput) ToDicomStoreIamBindingConditionPtrOutput

func (o DicomStoreIamBindingConditionPtrOutput) ToDicomStoreIamBindingConditionPtrOutput() DicomStoreIamBindingConditionPtrOutput

func (DicomStoreIamBindingConditionPtrOutput) ToDicomStoreIamBindingConditionPtrOutputWithContext

func (o DicomStoreIamBindingConditionPtrOutput) ToDicomStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingConditionPtrOutput

type DicomStoreIamBindingInput

type DicomStoreIamBindingInput interface {
	pulumi.Input

	ToDicomStoreIamBindingOutput() DicomStoreIamBindingOutput
	ToDicomStoreIamBindingOutputWithContext(ctx context.Context) DicomStoreIamBindingOutput
}

type DicomStoreIamBindingMap

type DicomStoreIamBindingMap map[string]DicomStoreIamBindingInput

func (DicomStoreIamBindingMap) ElementType

func (DicomStoreIamBindingMap) ElementType() reflect.Type

func (DicomStoreIamBindingMap) ToDicomStoreIamBindingMapOutput

func (i DicomStoreIamBindingMap) ToDicomStoreIamBindingMapOutput() DicomStoreIamBindingMapOutput

func (DicomStoreIamBindingMap) ToDicomStoreIamBindingMapOutputWithContext

func (i DicomStoreIamBindingMap) ToDicomStoreIamBindingMapOutputWithContext(ctx context.Context) DicomStoreIamBindingMapOutput

type DicomStoreIamBindingMapInput

type DicomStoreIamBindingMapInput interface {
	pulumi.Input

	ToDicomStoreIamBindingMapOutput() DicomStoreIamBindingMapOutput
	ToDicomStoreIamBindingMapOutputWithContext(context.Context) DicomStoreIamBindingMapOutput
}

DicomStoreIamBindingMapInput is an input type that accepts DicomStoreIamBindingMap and DicomStoreIamBindingMapOutput values. You can construct a concrete instance of `DicomStoreIamBindingMapInput` via:

DicomStoreIamBindingMap{ "key": DicomStoreIamBindingArgs{...} }

type DicomStoreIamBindingMapOutput

type DicomStoreIamBindingMapOutput struct{ *pulumi.OutputState }

func (DicomStoreIamBindingMapOutput) ElementType

func (DicomStoreIamBindingMapOutput) MapIndex

func (DicomStoreIamBindingMapOutput) ToDicomStoreIamBindingMapOutput

func (o DicomStoreIamBindingMapOutput) ToDicomStoreIamBindingMapOutput() DicomStoreIamBindingMapOutput

func (DicomStoreIamBindingMapOutput) ToDicomStoreIamBindingMapOutputWithContext

func (o DicomStoreIamBindingMapOutput) ToDicomStoreIamBindingMapOutputWithContext(ctx context.Context) DicomStoreIamBindingMapOutput

type DicomStoreIamBindingOutput

type DicomStoreIamBindingOutput struct{ *pulumi.OutputState }

func (DicomStoreIamBindingOutput) ElementType

func (DicomStoreIamBindingOutput) ElementType() reflect.Type

func (DicomStoreIamBindingOutput) ToDicomStoreIamBindingOutput

func (o DicomStoreIamBindingOutput) ToDicomStoreIamBindingOutput() DicomStoreIamBindingOutput

func (DicomStoreIamBindingOutput) ToDicomStoreIamBindingOutputWithContext

func (o DicomStoreIamBindingOutput) ToDicomStoreIamBindingOutputWithContext(ctx context.Context) DicomStoreIamBindingOutput

func (DicomStoreIamBindingOutput) ToDicomStoreIamBindingPtrOutput

func (o DicomStoreIamBindingOutput) ToDicomStoreIamBindingPtrOutput() DicomStoreIamBindingPtrOutput

func (DicomStoreIamBindingOutput) ToDicomStoreIamBindingPtrOutputWithContext

func (o DicomStoreIamBindingOutput) ToDicomStoreIamBindingPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingPtrOutput

type DicomStoreIamBindingPtrInput

type DicomStoreIamBindingPtrInput interface {
	pulumi.Input

	ToDicomStoreIamBindingPtrOutput() DicomStoreIamBindingPtrOutput
	ToDicomStoreIamBindingPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingPtrOutput
}

type DicomStoreIamBindingPtrOutput

type DicomStoreIamBindingPtrOutput struct{ *pulumi.OutputState }

func (DicomStoreIamBindingPtrOutput) Elem added in v5.21.0

func (DicomStoreIamBindingPtrOutput) ElementType

func (DicomStoreIamBindingPtrOutput) ToDicomStoreIamBindingPtrOutput

func (o DicomStoreIamBindingPtrOutput) ToDicomStoreIamBindingPtrOutput() DicomStoreIamBindingPtrOutput

func (DicomStoreIamBindingPtrOutput) ToDicomStoreIamBindingPtrOutputWithContext

func (o DicomStoreIamBindingPtrOutput) ToDicomStoreIamBindingPtrOutputWithContext(ctx context.Context) DicomStoreIamBindingPtrOutput

type DicomStoreIamBindingState

type DicomStoreIamBindingState struct {
	Condition DicomStoreIamBindingConditionPtrInput
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringPtrInput
	// (Computed) The etag of the DICOM store's IAM policy.
	Etag    pulumi.StringPtrInput
	Members pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.DicomStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (DicomStoreIamBindingState) ElementType

func (DicomStoreIamBindingState) ElementType() reflect.Type

type DicomStoreIamMember

type DicomStoreIamMember struct {
	pulumi.CustomResourceState

	Condition DicomStoreIamMemberConditionPtrOutput `pulumi:"condition"`
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringOutput `pulumi:"dicomStoreId"`
	// (Computed) The etag of the DICOM store's IAM policy.
	Etag   pulumi.StringOutput `pulumi:"etag"`
	Member pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `healthcare.DicomStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare DICOM store. Each of these resources serves a different use case:

* `healthcare.DicomStoreIamPolicy`: Authoritative. Sets the IAM policy for the DICOM store and replaces any existing policy already attached. * `healthcare.DicomStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the DICOM store are preserved. * `healthcare.DicomStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the DICOM store are preserved.

> **Note:** `healthcare.DicomStoreIamPolicy` **cannot** be used in conjunction with `healthcare.DicomStoreIamBinding` and `healthcare.DicomStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.DicomStoreIamBinding` resources **can be** used in conjunction with `healthcare.DicomStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_dicom\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStoreIamPolicy(ctx, "dicomStore", &healthcare.DicomStoreIamPolicyArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dicom\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDicomStoreIamBinding(ctx, "dicomStore", &healthcare.DicomStoreIamBindingArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dicom\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDicomStoreIamMember(ctx, "dicomStore", &healthcare.DicomStoreIamMemberArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			Member:       pulumi.String("user:jane@example.com"),
			Role:         pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `dicom_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamMember:DicomStoreIamMember dicom_store_iam "your-project-id/location-name/dataset-name/dicom-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `dicom_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamMember:DicomStoreIamMember dicom_store_iam "your-project-id/location-name/dataset-name/dicom-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `dicom_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamMember:DicomStoreIamMember dicom_store_iam your-project-id/location-name/dataset-name/dicom-store-name

```

func GetDicomStoreIamMember

func GetDicomStoreIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DicomStoreIamMemberState, opts ...pulumi.ResourceOption) (*DicomStoreIamMember, error)

GetDicomStoreIamMember gets an existing DicomStoreIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDicomStoreIamMember

func NewDicomStoreIamMember(ctx *pulumi.Context,
	name string, args *DicomStoreIamMemberArgs, opts ...pulumi.ResourceOption) (*DicomStoreIamMember, error)

NewDicomStoreIamMember registers a new resource with the given unique name, arguments, and options.

func (*DicomStoreIamMember) ElementType

func (*DicomStoreIamMember) ElementType() reflect.Type

func (*DicomStoreIamMember) ToDicomStoreIamMemberOutput

func (i *DicomStoreIamMember) ToDicomStoreIamMemberOutput() DicomStoreIamMemberOutput

func (*DicomStoreIamMember) ToDicomStoreIamMemberOutputWithContext

func (i *DicomStoreIamMember) ToDicomStoreIamMemberOutputWithContext(ctx context.Context) DicomStoreIamMemberOutput

func (*DicomStoreIamMember) ToDicomStoreIamMemberPtrOutput

func (i *DicomStoreIamMember) ToDicomStoreIamMemberPtrOutput() DicomStoreIamMemberPtrOutput

func (*DicomStoreIamMember) ToDicomStoreIamMemberPtrOutputWithContext

func (i *DicomStoreIamMember) ToDicomStoreIamMemberPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberPtrOutput

type DicomStoreIamMemberArgs

type DicomStoreIamMemberArgs struct {
	Condition DicomStoreIamMemberConditionPtrInput
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringInput
	Member       pulumi.StringInput
	// The role that should be applied. Only one
	// `healthcare.DicomStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a DicomStoreIamMember resource.

func (DicomStoreIamMemberArgs) ElementType

func (DicomStoreIamMemberArgs) ElementType() reflect.Type

type DicomStoreIamMemberArray

type DicomStoreIamMemberArray []DicomStoreIamMemberInput

func (DicomStoreIamMemberArray) ElementType

func (DicomStoreIamMemberArray) ElementType() reflect.Type

func (DicomStoreIamMemberArray) ToDicomStoreIamMemberArrayOutput

func (i DicomStoreIamMemberArray) ToDicomStoreIamMemberArrayOutput() DicomStoreIamMemberArrayOutput

func (DicomStoreIamMemberArray) ToDicomStoreIamMemberArrayOutputWithContext

func (i DicomStoreIamMemberArray) ToDicomStoreIamMemberArrayOutputWithContext(ctx context.Context) DicomStoreIamMemberArrayOutput

type DicomStoreIamMemberArrayInput

type DicomStoreIamMemberArrayInput interface {
	pulumi.Input

	ToDicomStoreIamMemberArrayOutput() DicomStoreIamMemberArrayOutput
	ToDicomStoreIamMemberArrayOutputWithContext(context.Context) DicomStoreIamMemberArrayOutput
}

DicomStoreIamMemberArrayInput is an input type that accepts DicomStoreIamMemberArray and DicomStoreIamMemberArrayOutput values. You can construct a concrete instance of `DicomStoreIamMemberArrayInput` via:

DicomStoreIamMemberArray{ DicomStoreIamMemberArgs{...} }

type DicomStoreIamMemberArrayOutput

type DicomStoreIamMemberArrayOutput struct{ *pulumi.OutputState }

func (DicomStoreIamMemberArrayOutput) ElementType

func (DicomStoreIamMemberArrayOutput) Index

func (DicomStoreIamMemberArrayOutput) ToDicomStoreIamMemberArrayOutput

func (o DicomStoreIamMemberArrayOutput) ToDicomStoreIamMemberArrayOutput() DicomStoreIamMemberArrayOutput

func (DicomStoreIamMemberArrayOutput) ToDicomStoreIamMemberArrayOutputWithContext

func (o DicomStoreIamMemberArrayOutput) ToDicomStoreIamMemberArrayOutputWithContext(ctx context.Context) DicomStoreIamMemberArrayOutput

type DicomStoreIamMemberCondition

type DicomStoreIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type DicomStoreIamMemberConditionArgs

type DicomStoreIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (DicomStoreIamMemberConditionArgs) ElementType

func (DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionOutput

func (i DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionOutput() DicomStoreIamMemberConditionOutput

func (DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionOutputWithContext

func (i DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionOutputWithContext(ctx context.Context) DicomStoreIamMemberConditionOutput

func (DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionPtrOutput

func (i DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionPtrOutput() DicomStoreIamMemberConditionPtrOutput

func (DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionPtrOutputWithContext

func (i DicomStoreIamMemberConditionArgs) ToDicomStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberConditionPtrOutput

type DicomStoreIamMemberConditionInput

type DicomStoreIamMemberConditionInput interface {
	pulumi.Input

	ToDicomStoreIamMemberConditionOutput() DicomStoreIamMemberConditionOutput
	ToDicomStoreIamMemberConditionOutputWithContext(context.Context) DicomStoreIamMemberConditionOutput
}

DicomStoreIamMemberConditionInput is an input type that accepts DicomStoreIamMemberConditionArgs and DicomStoreIamMemberConditionOutput values. You can construct a concrete instance of `DicomStoreIamMemberConditionInput` via:

DicomStoreIamMemberConditionArgs{...}

type DicomStoreIamMemberConditionOutput

type DicomStoreIamMemberConditionOutput struct{ *pulumi.OutputState }

func (DicomStoreIamMemberConditionOutput) Description

func (DicomStoreIamMemberConditionOutput) ElementType

func (DicomStoreIamMemberConditionOutput) Expression

func (DicomStoreIamMemberConditionOutput) Title

func (DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionOutput

func (o DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionOutput() DicomStoreIamMemberConditionOutput

func (DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionOutputWithContext

func (o DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionOutputWithContext(ctx context.Context) DicomStoreIamMemberConditionOutput

func (DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionPtrOutput

func (o DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionPtrOutput() DicomStoreIamMemberConditionPtrOutput

func (DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionPtrOutputWithContext

func (o DicomStoreIamMemberConditionOutput) ToDicomStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberConditionPtrOutput

type DicomStoreIamMemberConditionPtrInput

type DicomStoreIamMemberConditionPtrInput interface {
	pulumi.Input

	ToDicomStoreIamMemberConditionPtrOutput() DicomStoreIamMemberConditionPtrOutput
	ToDicomStoreIamMemberConditionPtrOutputWithContext(context.Context) DicomStoreIamMemberConditionPtrOutput
}

DicomStoreIamMemberConditionPtrInput is an input type that accepts DicomStoreIamMemberConditionArgs, DicomStoreIamMemberConditionPtr and DicomStoreIamMemberConditionPtrOutput values. You can construct a concrete instance of `DicomStoreIamMemberConditionPtrInput` via:

        DicomStoreIamMemberConditionArgs{...}

or:

        nil

type DicomStoreIamMemberConditionPtrOutput

type DicomStoreIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (DicomStoreIamMemberConditionPtrOutput) Description

func (DicomStoreIamMemberConditionPtrOutput) Elem

func (DicomStoreIamMemberConditionPtrOutput) ElementType

func (DicomStoreIamMemberConditionPtrOutput) Expression

func (DicomStoreIamMemberConditionPtrOutput) Title

func (DicomStoreIamMemberConditionPtrOutput) ToDicomStoreIamMemberConditionPtrOutput

func (o DicomStoreIamMemberConditionPtrOutput) ToDicomStoreIamMemberConditionPtrOutput() DicomStoreIamMemberConditionPtrOutput

func (DicomStoreIamMemberConditionPtrOutput) ToDicomStoreIamMemberConditionPtrOutputWithContext

func (o DicomStoreIamMemberConditionPtrOutput) ToDicomStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberConditionPtrOutput

type DicomStoreIamMemberInput

type DicomStoreIamMemberInput interface {
	pulumi.Input

	ToDicomStoreIamMemberOutput() DicomStoreIamMemberOutput
	ToDicomStoreIamMemberOutputWithContext(ctx context.Context) DicomStoreIamMemberOutput
}

type DicomStoreIamMemberMap

type DicomStoreIamMemberMap map[string]DicomStoreIamMemberInput

func (DicomStoreIamMemberMap) ElementType

func (DicomStoreIamMemberMap) ElementType() reflect.Type

func (DicomStoreIamMemberMap) ToDicomStoreIamMemberMapOutput

func (i DicomStoreIamMemberMap) ToDicomStoreIamMemberMapOutput() DicomStoreIamMemberMapOutput

func (DicomStoreIamMemberMap) ToDicomStoreIamMemberMapOutputWithContext

func (i DicomStoreIamMemberMap) ToDicomStoreIamMemberMapOutputWithContext(ctx context.Context) DicomStoreIamMemberMapOutput

type DicomStoreIamMemberMapInput

type DicomStoreIamMemberMapInput interface {
	pulumi.Input

	ToDicomStoreIamMemberMapOutput() DicomStoreIamMemberMapOutput
	ToDicomStoreIamMemberMapOutputWithContext(context.Context) DicomStoreIamMemberMapOutput
}

DicomStoreIamMemberMapInput is an input type that accepts DicomStoreIamMemberMap and DicomStoreIamMemberMapOutput values. You can construct a concrete instance of `DicomStoreIamMemberMapInput` via:

DicomStoreIamMemberMap{ "key": DicomStoreIamMemberArgs{...} }

type DicomStoreIamMemberMapOutput

type DicomStoreIamMemberMapOutput struct{ *pulumi.OutputState }

func (DicomStoreIamMemberMapOutput) ElementType

func (DicomStoreIamMemberMapOutput) MapIndex

func (DicomStoreIamMemberMapOutput) ToDicomStoreIamMemberMapOutput

func (o DicomStoreIamMemberMapOutput) ToDicomStoreIamMemberMapOutput() DicomStoreIamMemberMapOutput

func (DicomStoreIamMemberMapOutput) ToDicomStoreIamMemberMapOutputWithContext

func (o DicomStoreIamMemberMapOutput) ToDicomStoreIamMemberMapOutputWithContext(ctx context.Context) DicomStoreIamMemberMapOutput

type DicomStoreIamMemberOutput

type DicomStoreIamMemberOutput struct{ *pulumi.OutputState }

func (DicomStoreIamMemberOutput) ElementType

func (DicomStoreIamMemberOutput) ElementType() reflect.Type

func (DicomStoreIamMemberOutput) ToDicomStoreIamMemberOutput

func (o DicomStoreIamMemberOutput) ToDicomStoreIamMemberOutput() DicomStoreIamMemberOutput

func (DicomStoreIamMemberOutput) ToDicomStoreIamMemberOutputWithContext

func (o DicomStoreIamMemberOutput) ToDicomStoreIamMemberOutputWithContext(ctx context.Context) DicomStoreIamMemberOutput

func (DicomStoreIamMemberOutput) ToDicomStoreIamMemberPtrOutput

func (o DicomStoreIamMemberOutput) ToDicomStoreIamMemberPtrOutput() DicomStoreIamMemberPtrOutput

func (DicomStoreIamMemberOutput) ToDicomStoreIamMemberPtrOutputWithContext

func (o DicomStoreIamMemberOutput) ToDicomStoreIamMemberPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberPtrOutput

type DicomStoreIamMemberPtrInput

type DicomStoreIamMemberPtrInput interface {
	pulumi.Input

	ToDicomStoreIamMemberPtrOutput() DicomStoreIamMemberPtrOutput
	ToDicomStoreIamMemberPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberPtrOutput
}

type DicomStoreIamMemberPtrOutput

type DicomStoreIamMemberPtrOutput struct{ *pulumi.OutputState }

func (DicomStoreIamMemberPtrOutput) Elem added in v5.21.0

func (DicomStoreIamMemberPtrOutput) ElementType

func (DicomStoreIamMemberPtrOutput) ToDicomStoreIamMemberPtrOutput

func (o DicomStoreIamMemberPtrOutput) ToDicomStoreIamMemberPtrOutput() DicomStoreIamMemberPtrOutput

func (DicomStoreIamMemberPtrOutput) ToDicomStoreIamMemberPtrOutputWithContext

func (o DicomStoreIamMemberPtrOutput) ToDicomStoreIamMemberPtrOutputWithContext(ctx context.Context) DicomStoreIamMemberPtrOutput

type DicomStoreIamMemberState

type DicomStoreIamMemberState struct {
	Condition DicomStoreIamMemberConditionPtrInput
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringPtrInput
	// (Computed) The etag of the DICOM store's IAM policy.
	Etag   pulumi.StringPtrInput
	Member pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `healthcare.DicomStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (DicomStoreIamMemberState) ElementType

func (DicomStoreIamMemberState) ElementType() reflect.Type

type DicomStoreIamPolicy

type DicomStoreIamPolicy struct {
	pulumi.CustomResourceState

	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringOutput `pulumi:"dicomStoreId"`
	// (Computed) The etag of the DICOM store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Three different resources help you manage your IAM policy for Healthcare DICOM store. Each of these resources serves a different use case:

* `healthcare.DicomStoreIamPolicy`: Authoritative. Sets the IAM policy for the DICOM store and replaces any existing policy already attached. * `healthcare.DicomStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the DICOM store are preserved. * `healthcare.DicomStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the DICOM store are preserved.

> **Note:** `healthcare.DicomStoreIamPolicy` **cannot** be used in conjunction with `healthcare.DicomStoreIamBinding` and `healthcare.DicomStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.DicomStoreIamBinding` resources **can be** used in conjunction with `healthcare.DicomStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_dicom\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewDicomStoreIamPolicy(ctx, "dicomStore", &healthcare.DicomStoreIamPolicyArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dicom\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDicomStoreIamBinding(ctx, "dicomStore", &healthcare.DicomStoreIamBindingArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_dicom\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewDicomStoreIamMember(ctx, "dicomStore", &healthcare.DicomStoreIamMemberArgs{
			DicomStoreId: pulumi.String("your-dicom-store-id"),
			Member:       pulumi.String("user:jane@example.com"),
			Role:         pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `dicom_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamPolicy:DicomStoreIamPolicy dicom_store_iam "your-project-id/location-name/dataset-name/dicom-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `dicom_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamPolicy:DicomStoreIamPolicy dicom_store_iam "your-project-id/location-name/dataset-name/dicom-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `dicom_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/dicomStoreIamPolicy:DicomStoreIamPolicy dicom_store_iam your-project-id/location-name/dataset-name/dicom-store-name

```

func GetDicomStoreIamPolicy

func GetDicomStoreIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DicomStoreIamPolicyState, opts ...pulumi.ResourceOption) (*DicomStoreIamPolicy, error)

GetDicomStoreIamPolicy gets an existing DicomStoreIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDicomStoreIamPolicy

func NewDicomStoreIamPolicy(ctx *pulumi.Context,
	name string, args *DicomStoreIamPolicyArgs, opts ...pulumi.ResourceOption) (*DicomStoreIamPolicy, error)

NewDicomStoreIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*DicomStoreIamPolicy) ElementType

func (*DicomStoreIamPolicy) ElementType() reflect.Type

func (*DicomStoreIamPolicy) ToDicomStoreIamPolicyOutput

func (i *DicomStoreIamPolicy) ToDicomStoreIamPolicyOutput() DicomStoreIamPolicyOutput

func (*DicomStoreIamPolicy) ToDicomStoreIamPolicyOutputWithContext

func (i *DicomStoreIamPolicy) ToDicomStoreIamPolicyOutputWithContext(ctx context.Context) DicomStoreIamPolicyOutput

func (*DicomStoreIamPolicy) ToDicomStoreIamPolicyPtrOutput

func (i *DicomStoreIamPolicy) ToDicomStoreIamPolicyPtrOutput() DicomStoreIamPolicyPtrOutput

func (*DicomStoreIamPolicy) ToDicomStoreIamPolicyPtrOutputWithContext

func (i *DicomStoreIamPolicy) ToDicomStoreIamPolicyPtrOutputWithContext(ctx context.Context) DicomStoreIamPolicyPtrOutput

type DicomStoreIamPolicyArgs

type DicomStoreIamPolicyArgs struct {
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a DicomStoreIamPolicy resource.

func (DicomStoreIamPolicyArgs) ElementType

func (DicomStoreIamPolicyArgs) ElementType() reflect.Type

type DicomStoreIamPolicyArray

type DicomStoreIamPolicyArray []DicomStoreIamPolicyInput

func (DicomStoreIamPolicyArray) ElementType

func (DicomStoreIamPolicyArray) ElementType() reflect.Type

func (DicomStoreIamPolicyArray) ToDicomStoreIamPolicyArrayOutput

func (i DicomStoreIamPolicyArray) ToDicomStoreIamPolicyArrayOutput() DicomStoreIamPolicyArrayOutput

func (DicomStoreIamPolicyArray) ToDicomStoreIamPolicyArrayOutputWithContext

func (i DicomStoreIamPolicyArray) ToDicomStoreIamPolicyArrayOutputWithContext(ctx context.Context) DicomStoreIamPolicyArrayOutput

type DicomStoreIamPolicyArrayInput

type DicomStoreIamPolicyArrayInput interface {
	pulumi.Input

	ToDicomStoreIamPolicyArrayOutput() DicomStoreIamPolicyArrayOutput
	ToDicomStoreIamPolicyArrayOutputWithContext(context.Context) DicomStoreIamPolicyArrayOutput
}

DicomStoreIamPolicyArrayInput is an input type that accepts DicomStoreIamPolicyArray and DicomStoreIamPolicyArrayOutput values. You can construct a concrete instance of `DicomStoreIamPolicyArrayInput` via:

DicomStoreIamPolicyArray{ DicomStoreIamPolicyArgs{...} }

type DicomStoreIamPolicyArrayOutput

type DicomStoreIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (DicomStoreIamPolicyArrayOutput) ElementType

func (DicomStoreIamPolicyArrayOutput) Index

func (DicomStoreIamPolicyArrayOutput) ToDicomStoreIamPolicyArrayOutput

func (o DicomStoreIamPolicyArrayOutput) ToDicomStoreIamPolicyArrayOutput() DicomStoreIamPolicyArrayOutput

func (DicomStoreIamPolicyArrayOutput) ToDicomStoreIamPolicyArrayOutputWithContext

func (o DicomStoreIamPolicyArrayOutput) ToDicomStoreIamPolicyArrayOutputWithContext(ctx context.Context) DicomStoreIamPolicyArrayOutput

type DicomStoreIamPolicyInput

type DicomStoreIamPolicyInput interface {
	pulumi.Input

	ToDicomStoreIamPolicyOutput() DicomStoreIamPolicyOutput
	ToDicomStoreIamPolicyOutputWithContext(ctx context.Context) DicomStoreIamPolicyOutput
}

type DicomStoreIamPolicyMap

type DicomStoreIamPolicyMap map[string]DicomStoreIamPolicyInput

func (DicomStoreIamPolicyMap) ElementType

func (DicomStoreIamPolicyMap) ElementType() reflect.Type

func (DicomStoreIamPolicyMap) ToDicomStoreIamPolicyMapOutput

func (i DicomStoreIamPolicyMap) ToDicomStoreIamPolicyMapOutput() DicomStoreIamPolicyMapOutput

func (DicomStoreIamPolicyMap) ToDicomStoreIamPolicyMapOutputWithContext

func (i DicomStoreIamPolicyMap) ToDicomStoreIamPolicyMapOutputWithContext(ctx context.Context) DicomStoreIamPolicyMapOutput

type DicomStoreIamPolicyMapInput

type DicomStoreIamPolicyMapInput interface {
	pulumi.Input

	ToDicomStoreIamPolicyMapOutput() DicomStoreIamPolicyMapOutput
	ToDicomStoreIamPolicyMapOutputWithContext(context.Context) DicomStoreIamPolicyMapOutput
}

DicomStoreIamPolicyMapInput is an input type that accepts DicomStoreIamPolicyMap and DicomStoreIamPolicyMapOutput values. You can construct a concrete instance of `DicomStoreIamPolicyMapInput` via:

DicomStoreIamPolicyMap{ "key": DicomStoreIamPolicyArgs{...} }

type DicomStoreIamPolicyMapOutput

type DicomStoreIamPolicyMapOutput struct{ *pulumi.OutputState }

func (DicomStoreIamPolicyMapOutput) ElementType

func (DicomStoreIamPolicyMapOutput) MapIndex

func (DicomStoreIamPolicyMapOutput) ToDicomStoreIamPolicyMapOutput

func (o DicomStoreIamPolicyMapOutput) ToDicomStoreIamPolicyMapOutput() DicomStoreIamPolicyMapOutput

func (DicomStoreIamPolicyMapOutput) ToDicomStoreIamPolicyMapOutputWithContext

func (o DicomStoreIamPolicyMapOutput) ToDicomStoreIamPolicyMapOutputWithContext(ctx context.Context) DicomStoreIamPolicyMapOutput

type DicomStoreIamPolicyOutput

type DicomStoreIamPolicyOutput struct{ *pulumi.OutputState }

func (DicomStoreIamPolicyOutput) ElementType

func (DicomStoreIamPolicyOutput) ElementType() reflect.Type

func (DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyOutput

func (o DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyOutput() DicomStoreIamPolicyOutput

func (DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyOutputWithContext

func (o DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyOutputWithContext(ctx context.Context) DicomStoreIamPolicyOutput

func (DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyPtrOutput

func (o DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyPtrOutput() DicomStoreIamPolicyPtrOutput

func (DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyPtrOutputWithContext

func (o DicomStoreIamPolicyOutput) ToDicomStoreIamPolicyPtrOutputWithContext(ctx context.Context) DicomStoreIamPolicyPtrOutput

type DicomStoreIamPolicyPtrInput

type DicomStoreIamPolicyPtrInput interface {
	pulumi.Input

	ToDicomStoreIamPolicyPtrOutput() DicomStoreIamPolicyPtrOutput
	ToDicomStoreIamPolicyPtrOutputWithContext(ctx context.Context) DicomStoreIamPolicyPtrOutput
}

type DicomStoreIamPolicyPtrOutput

type DicomStoreIamPolicyPtrOutput struct{ *pulumi.OutputState }

func (DicomStoreIamPolicyPtrOutput) Elem added in v5.21.0

func (DicomStoreIamPolicyPtrOutput) ElementType

func (DicomStoreIamPolicyPtrOutput) ToDicomStoreIamPolicyPtrOutput

func (o DicomStoreIamPolicyPtrOutput) ToDicomStoreIamPolicyPtrOutput() DicomStoreIamPolicyPtrOutput

func (DicomStoreIamPolicyPtrOutput) ToDicomStoreIamPolicyPtrOutputWithContext

func (o DicomStoreIamPolicyPtrOutput) ToDicomStoreIamPolicyPtrOutputWithContext(ctx context.Context) DicomStoreIamPolicyPtrOutput

type DicomStoreIamPolicyState

type DicomStoreIamPolicyState struct {
	// The DICOM store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{dicom_store_name}` or
	// `{location_name}/{dataset_name}/{dicom_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	DicomStoreId pulumi.StringPtrInput
	// (Computed) The etag of the DICOM store's IAM policy.
	Etag pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
}

func (DicomStoreIamPolicyState) ElementType

func (DicomStoreIamPolicyState) ElementType() reflect.Type

type DicomStoreInput

type DicomStoreInput interface {
	pulumi.Input

	ToDicomStoreOutput() DicomStoreOutput
	ToDicomStoreOutputWithContext(ctx context.Context) DicomStoreOutput
}

type DicomStoreMap

type DicomStoreMap map[string]DicomStoreInput

func (DicomStoreMap) ElementType

func (DicomStoreMap) ElementType() reflect.Type

func (DicomStoreMap) ToDicomStoreMapOutput

func (i DicomStoreMap) ToDicomStoreMapOutput() DicomStoreMapOutput

func (DicomStoreMap) ToDicomStoreMapOutputWithContext

func (i DicomStoreMap) ToDicomStoreMapOutputWithContext(ctx context.Context) DicomStoreMapOutput

type DicomStoreMapInput

type DicomStoreMapInput interface {
	pulumi.Input

	ToDicomStoreMapOutput() DicomStoreMapOutput
	ToDicomStoreMapOutputWithContext(context.Context) DicomStoreMapOutput
}

DicomStoreMapInput is an input type that accepts DicomStoreMap and DicomStoreMapOutput values. You can construct a concrete instance of `DicomStoreMapInput` via:

DicomStoreMap{ "key": DicomStoreArgs{...} }

type DicomStoreMapOutput

type DicomStoreMapOutput struct{ *pulumi.OutputState }

func (DicomStoreMapOutput) ElementType

func (DicomStoreMapOutput) ElementType() reflect.Type

func (DicomStoreMapOutput) MapIndex

func (DicomStoreMapOutput) ToDicomStoreMapOutput

func (o DicomStoreMapOutput) ToDicomStoreMapOutput() DicomStoreMapOutput

func (DicomStoreMapOutput) ToDicomStoreMapOutputWithContext

func (o DicomStoreMapOutput) ToDicomStoreMapOutputWithContext(ctx context.Context) DicomStoreMapOutput

type DicomStoreNotificationConfig

type DicomStoreNotificationConfig struct {
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic string `pulumi:"pubsubTopic"`
}

type DicomStoreNotificationConfigArgs

type DicomStoreNotificationConfigArgs struct {
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic pulumi.StringInput `pulumi:"pubsubTopic"`
}

func (DicomStoreNotificationConfigArgs) ElementType

func (DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigOutput

func (i DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigOutput() DicomStoreNotificationConfigOutput

func (DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigOutputWithContext

func (i DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigOutputWithContext(ctx context.Context) DicomStoreNotificationConfigOutput

func (DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigPtrOutput

func (i DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigPtrOutput() DicomStoreNotificationConfigPtrOutput

func (DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigPtrOutputWithContext

func (i DicomStoreNotificationConfigArgs) ToDicomStoreNotificationConfigPtrOutputWithContext(ctx context.Context) DicomStoreNotificationConfigPtrOutput

type DicomStoreNotificationConfigInput

type DicomStoreNotificationConfigInput interface {
	pulumi.Input

	ToDicomStoreNotificationConfigOutput() DicomStoreNotificationConfigOutput
	ToDicomStoreNotificationConfigOutputWithContext(context.Context) DicomStoreNotificationConfigOutput
}

DicomStoreNotificationConfigInput is an input type that accepts DicomStoreNotificationConfigArgs and DicomStoreNotificationConfigOutput values. You can construct a concrete instance of `DicomStoreNotificationConfigInput` via:

DicomStoreNotificationConfigArgs{...}

type DicomStoreNotificationConfigOutput

type DicomStoreNotificationConfigOutput struct{ *pulumi.OutputState }

func (DicomStoreNotificationConfigOutput) ElementType

func (DicomStoreNotificationConfigOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigOutput

func (o DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigOutput() DicomStoreNotificationConfigOutput

func (DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigOutputWithContext

func (o DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigOutputWithContext(ctx context.Context) DicomStoreNotificationConfigOutput

func (DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigPtrOutput

func (o DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigPtrOutput() DicomStoreNotificationConfigPtrOutput

func (DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigPtrOutputWithContext

func (o DicomStoreNotificationConfigOutput) ToDicomStoreNotificationConfigPtrOutputWithContext(ctx context.Context) DicomStoreNotificationConfigPtrOutput

type DicomStoreNotificationConfigPtrInput

type DicomStoreNotificationConfigPtrInput interface {
	pulumi.Input

	ToDicomStoreNotificationConfigPtrOutput() DicomStoreNotificationConfigPtrOutput
	ToDicomStoreNotificationConfigPtrOutputWithContext(context.Context) DicomStoreNotificationConfigPtrOutput
}

DicomStoreNotificationConfigPtrInput is an input type that accepts DicomStoreNotificationConfigArgs, DicomStoreNotificationConfigPtr and DicomStoreNotificationConfigPtrOutput values. You can construct a concrete instance of `DicomStoreNotificationConfigPtrInput` via:

        DicomStoreNotificationConfigArgs{...}

or:

        nil

type DicomStoreNotificationConfigPtrOutput

type DicomStoreNotificationConfigPtrOutput struct{ *pulumi.OutputState }

func (DicomStoreNotificationConfigPtrOutput) Elem

func (DicomStoreNotificationConfigPtrOutput) ElementType

func (DicomStoreNotificationConfigPtrOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (DicomStoreNotificationConfigPtrOutput) ToDicomStoreNotificationConfigPtrOutput

func (o DicomStoreNotificationConfigPtrOutput) ToDicomStoreNotificationConfigPtrOutput() DicomStoreNotificationConfigPtrOutput

func (DicomStoreNotificationConfigPtrOutput) ToDicomStoreNotificationConfigPtrOutputWithContext

func (o DicomStoreNotificationConfigPtrOutput) ToDicomStoreNotificationConfigPtrOutputWithContext(ctx context.Context) DicomStoreNotificationConfigPtrOutput

type DicomStoreOutput

type DicomStoreOutput struct{ *pulumi.OutputState }

func (DicomStoreOutput) ElementType

func (DicomStoreOutput) ElementType() reflect.Type

func (DicomStoreOutput) ToDicomStoreOutput

func (o DicomStoreOutput) ToDicomStoreOutput() DicomStoreOutput

func (DicomStoreOutput) ToDicomStoreOutputWithContext

func (o DicomStoreOutput) ToDicomStoreOutputWithContext(ctx context.Context) DicomStoreOutput

func (DicomStoreOutput) ToDicomStorePtrOutput

func (o DicomStoreOutput) ToDicomStorePtrOutput() DicomStorePtrOutput

func (DicomStoreOutput) ToDicomStorePtrOutputWithContext

func (o DicomStoreOutput) ToDicomStorePtrOutputWithContext(ctx context.Context) DicomStorePtrOutput

type DicomStorePtrInput

type DicomStorePtrInput interface {
	pulumi.Input

	ToDicomStorePtrOutput() DicomStorePtrOutput
	ToDicomStorePtrOutputWithContext(ctx context.Context) DicomStorePtrOutput
}

type DicomStorePtrOutput

type DicomStorePtrOutput struct{ *pulumi.OutputState }

func (DicomStorePtrOutput) Elem added in v5.21.0

func (DicomStorePtrOutput) ElementType

func (DicomStorePtrOutput) ElementType() reflect.Type

func (DicomStorePtrOutput) ToDicomStorePtrOutput

func (o DicomStorePtrOutput) ToDicomStorePtrOutput() DicomStorePtrOutput

func (DicomStorePtrOutput) ToDicomStorePtrOutputWithContext

func (o DicomStorePtrOutput) ToDicomStorePtrOutputWithContext(ctx context.Context) DicomStorePtrOutput

type DicomStoreState

type DicomStoreState struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringPtrInput
	// User-supplied key-value pairs used to organize DICOM stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The resource name for the DicomStore.
	// ** Changing this property may recreate the Dicom store (removing all data) **
	Name pulumi.StringPtrInput
	// A nested object resource
	// Structure is documented below.
	NotificationConfig DicomStoreNotificationConfigPtrInput
	// The fully qualified name of this dataset
	SelfLink pulumi.StringPtrInput
	// To enable streaming to BigQuery, configure the streamConfigs object in your DICOM store.
	// streamConfigs is an array, so you can specify multiple BigQuery destinations. You can stream metadata from a single DICOM store to up to five BigQuery tables in a BigQuery dataset.
	// Structure is documented below.
	StreamConfigs DicomStoreStreamConfigArrayInput
}

func (DicomStoreState) ElementType

func (DicomStoreState) ElementType() reflect.Type

type DicomStoreStreamConfig added in v5.3.0

type DicomStoreStreamConfig struct {
	// BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.
	// Structure is documented below.
	BigqueryDestination DicomStoreStreamConfigBigqueryDestination `pulumi:"bigqueryDestination"`
}

type DicomStoreStreamConfigArgs added in v5.3.0

type DicomStoreStreamConfigArgs struct {
	// BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.
	// Structure is documented below.
	BigqueryDestination DicomStoreStreamConfigBigqueryDestinationInput `pulumi:"bigqueryDestination"`
}

func (DicomStoreStreamConfigArgs) ElementType added in v5.3.0

func (DicomStoreStreamConfigArgs) ElementType() reflect.Type

func (DicomStoreStreamConfigArgs) ToDicomStoreStreamConfigOutput added in v5.3.0

func (i DicomStoreStreamConfigArgs) ToDicomStoreStreamConfigOutput() DicomStoreStreamConfigOutput

func (DicomStoreStreamConfigArgs) ToDicomStoreStreamConfigOutputWithContext added in v5.3.0

func (i DicomStoreStreamConfigArgs) ToDicomStoreStreamConfigOutputWithContext(ctx context.Context) DicomStoreStreamConfigOutput

type DicomStoreStreamConfigArray added in v5.3.0

type DicomStoreStreamConfigArray []DicomStoreStreamConfigInput

func (DicomStoreStreamConfigArray) ElementType added in v5.3.0

func (DicomStoreStreamConfigArray) ToDicomStoreStreamConfigArrayOutput added in v5.3.0

func (i DicomStoreStreamConfigArray) ToDicomStoreStreamConfigArrayOutput() DicomStoreStreamConfigArrayOutput

func (DicomStoreStreamConfigArray) ToDicomStoreStreamConfigArrayOutputWithContext added in v5.3.0

func (i DicomStoreStreamConfigArray) ToDicomStoreStreamConfigArrayOutputWithContext(ctx context.Context) DicomStoreStreamConfigArrayOutput

type DicomStoreStreamConfigArrayInput added in v5.3.0

type DicomStoreStreamConfigArrayInput interface {
	pulumi.Input

	ToDicomStoreStreamConfigArrayOutput() DicomStoreStreamConfigArrayOutput
	ToDicomStoreStreamConfigArrayOutputWithContext(context.Context) DicomStoreStreamConfigArrayOutput
}

DicomStoreStreamConfigArrayInput is an input type that accepts DicomStoreStreamConfigArray and DicomStoreStreamConfigArrayOutput values. You can construct a concrete instance of `DicomStoreStreamConfigArrayInput` via:

DicomStoreStreamConfigArray{ DicomStoreStreamConfigArgs{...} }

type DicomStoreStreamConfigArrayOutput added in v5.3.0

type DicomStoreStreamConfigArrayOutput struct{ *pulumi.OutputState }

func (DicomStoreStreamConfigArrayOutput) ElementType added in v5.3.0

func (DicomStoreStreamConfigArrayOutput) Index added in v5.3.0

func (DicomStoreStreamConfigArrayOutput) ToDicomStoreStreamConfigArrayOutput added in v5.3.0

func (o DicomStoreStreamConfigArrayOutput) ToDicomStoreStreamConfigArrayOutput() DicomStoreStreamConfigArrayOutput

func (DicomStoreStreamConfigArrayOutput) ToDicomStoreStreamConfigArrayOutputWithContext added in v5.3.0

func (o DicomStoreStreamConfigArrayOutput) ToDicomStoreStreamConfigArrayOutputWithContext(ctx context.Context) DicomStoreStreamConfigArrayOutput

type DicomStoreStreamConfigBigqueryDestination added in v5.3.0

type DicomStoreStreamConfigBigqueryDestination struct {
	// a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.
	TableUri string `pulumi:"tableUri"`
}

type DicomStoreStreamConfigBigqueryDestinationArgs added in v5.3.0

type DicomStoreStreamConfigBigqueryDestinationArgs struct {
	// a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.
	TableUri pulumi.StringInput `pulumi:"tableUri"`
}

func (DicomStoreStreamConfigBigqueryDestinationArgs) ElementType added in v5.3.0

func (DicomStoreStreamConfigBigqueryDestinationArgs) ToDicomStoreStreamConfigBigqueryDestinationOutput added in v5.3.0

func (i DicomStoreStreamConfigBigqueryDestinationArgs) ToDicomStoreStreamConfigBigqueryDestinationOutput() DicomStoreStreamConfigBigqueryDestinationOutput

func (DicomStoreStreamConfigBigqueryDestinationArgs) ToDicomStoreStreamConfigBigqueryDestinationOutputWithContext added in v5.3.0

func (i DicomStoreStreamConfigBigqueryDestinationArgs) ToDicomStoreStreamConfigBigqueryDestinationOutputWithContext(ctx context.Context) DicomStoreStreamConfigBigqueryDestinationOutput

type DicomStoreStreamConfigBigqueryDestinationInput added in v5.3.0

type DicomStoreStreamConfigBigqueryDestinationInput interface {
	pulumi.Input

	ToDicomStoreStreamConfigBigqueryDestinationOutput() DicomStoreStreamConfigBigqueryDestinationOutput
	ToDicomStoreStreamConfigBigqueryDestinationOutputWithContext(context.Context) DicomStoreStreamConfigBigqueryDestinationOutput
}

DicomStoreStreamConfigBigqueryDestinationInput is an input type that accepts DicomStoreStreamConfigBigqueryDestinationArgs and DicomStoreStreamConfigBigqueryDestinationOutput values. You can construct a concrete instance of `DicomStoreStreamConfigBigqueryDestinationInput` via:

DicomStoreStreamConfigBigqueryDestinationArgs{...}

type DicomStoreStreamConfigBigqueryDestinationOutput added in v5.3.0

type DicomStoreStreamConfigBigqueryDestinationOutput struct{ *pulumi.OutputState }

func (DicomStoreStreamConfigBigqueryDestinationOutput) ElementType added in v5.3.0

func (DicomStoreStreamConfigBigqueryDestinationOutput) TableUri added in v5.3.0

a fully qualified BigQuery table URI where DICOM instance metadata will be streamed.

func (DicomStoreStreamConfigBigqueryDestinationOutput) ToDicomStoreStreamConfigBigqueryDestinationOutput added in v5.3.0

func (o DicomStoreStreamConfigBigqueryDestinationOutput) ToDicomStoreStreamConfigBigqueryDestinationOutput() DicomStoreStreamConfigBigqueryDestinationOutput

func (DicomStoreStreamConfigBigqueryDestinationOutput) ToDicomStoreStreamConfigBigqueryDestinationOutputWithContext added in v5.3.0

func (o DicomStoreStreamConfigBigqueryDestinationOutput) ToDicomStoreStreamConfigBigqueryDestinationOutputWithContext(ctx context.Context) DicomStoreStreamConfigBigqueryDestinationOutput

type DicomStoreStreamConfigInput added in v5.3.0

type DicomStoreStreamConfigInput interface {
	pulumi.Input

	ToDicomStoreStreamConfigOutput() DicomStoreStreamConfigOutput
	ToDicomStoreStreamConfigOutputWithContext(context.Context) DicomStoreStreamConfigOutput
}

DicomStoreStreamConfigInput is an input type that accepts DicomStoreStreamConfigArgs and DicomStoreStreamConfigOutput values. You can construct a concrete instance of `DicomStoreStreamConfigInput` via:

DicomStoreStreamConfigArgs{...}

type DicomStoreStreamConfigOutput added in v5.3.0

type DicomStoreStreamConfigOutput struct{ *pulumi.OutputState }

func (DicomStoreStreamConfigOutput) BigqueryDestination added in v5.3.0

BigQueryDestination to include a fully qualified BigQuery table URI where DICOM instance metadata will be streamed. Structure is documented below.

func (DicomStoreStreamConfigOutput) ElementType added in v5.3.0

func (DicomStoreStreamConfigOutput) ToDicomStoreStreamConfigOutput added in v5.3.0

func (o DicomStoreStreamConfigOutput) ToDicomStoreStreamConfigOutput() DicomStoreStreamConfigOutput

func (DicomStoreStreamConfigOutput) ToDicomStoreStreamConfigOutputWithContext added in v5.3.0

func (o DicomStoreStreamConfigOutput) ToDicomStoreStreamConfigOutputWithContext(ctx context.Context) DicomStoreStreamConfigOutput

type FhirStore

type FhirStore struct {
	pulumi.CustomResourceState

	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// Whether to disable referential integrity in this FHIR store. This field is immutable after FHIR store
	// creation. The default value is false, meaning that the API will enforce referential integrity and fail the
	// requests that will result in inconsistent state in the FHIR store. When this field is set to true, the API
	// will skip referential integrity check. Consequently, operations that rely on references, such as
	// Patient.get$everything, will not return all the results if broken references exist.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	DisableReferentialIntegrity pulumi.BoolPtrOutput `pulumi:"disableReferentialIntegrity"`
	// Whether to disable resource versioning for this FHIR store. This field can not be changed after the creation
	// of FHIR store. If set to false, which is the default behavior, all write operations will cause historical
	// versions to be recorded automatically. The historical versions can be fetched through the history APIs, but
	// cannot be updated. If set to true, no historical versions will be kept. The server will send back errors for
	// attempts to read the historical versions.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	DisableResourceVersioning pulumi.BoolPtrOutput `pulumi:"disableResourceVersioning"`
	// Whether to allow the bulk import API to accept history bundles and directly insert historical resource
	// versions into the FHIR store. Importing resource histories creates resource interactions that appear to have
	// occurred in the past, which clients may not want to allow. If set to false, history bundles within an import
	// will fail with an error.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	// ** This property can be changed manually in the Google Cloud Healthcare admin console without recreating the FHIR store **
	EnableHistoryImport pulumi.BoolPtrOutput `pulumi:"enableHistoryImport"`
	// Whether this FHIR store has the updateCreate capability. This determines if the client can use an Update
	// operation to create a new resource with a client-specified ID. If false, all IDs are server-assigned through
	// the Create operation and attempts to Update a non-existent resource will return errors. Please treat the audit
	// logs with appropriate levels of care if client-specified resource IDs contain sensitive data such as patient
	// identifiers, those IDs will be part of the FHIR resource path recorded in Cloud audit logs and Cloud Pub/Sub
	// notifications.
	EnableUpdateCreate pulumi.BoolPtrOutput `pulumi:"enableUpdateCreate"`
	// User-supplied key-value pairs used to organize FHIR stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The resource name for the FhirStore.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	Name pulumi.StringOutput `pulumi:"name"`
	// A nested object resource
	// Structure is documented below.
	NotificationConfig FhirStoreNotificationConfigPtrOutput `pulumi:"notificationConfig"`
	// The fully qualified name of this dataset
	SelfLink pulumi.StringOutput `pulumi:"selfLink"`
	// A list of streaming configs that configure the destinations of streaming export for every resource mutation in
	// this FHIR store. Each store is allowed to have up to 10 streaming configs. After a new config is added, the next
	// resource mutation is streamed to the new location in addition to the existing ones. When a location is removed
	// from the list, the server stops streaming to that location. Before adding a new config, you must add the required
	// bigquery.dataEditor role to your project's Cloud Healthcare Service Agent service account. Some lag (typically on
	// the order of dozens of seconds) is expected before the results show up in the streaming destination.
	// Structure is documented below.
	StreamConfigs FhirStoreStreamConfigArrayOutput `pulumi:"streamConfigs"`
	// The FHIR specification version.
	// Default value is `STU3`.
	// Possible values are `DSTU2`, `STU3`, and `R4`.
	Version pulumi.StringPtrOutput `pulumi:"version"`
}

A FhirStore is a datastore inside a Healthcare dataset that conforms to the FHIR (https://www.hl7.org/fhir/STU3/) standard for Healthcare information exchange

To get more information about FhirStore, see:

* [API documentation](https://cloud.google.com/healthcare/docs/reference/rest/v1/projects.locations.datasets.fhirStores) * How-to Guides

## Example Usage ### Healthcare Fhir Store Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := pubsub.NewTopic(ctx, "topic", nil)
		if err != nil {
			return err
		}
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewFhirStore(ctx, "_default", &healthcare.FhirStoreArgs{
			Dataset:                     dataset.ID(),
			Version:                     pulumi.String("R4"),
			EnableUpdateCreate:          pulumi.Bool(false),
			DisableReferentialIntegrity: pulumi.Bool(false),
			DisableResourceVersioning:   pulumi.Bool(false),
			EnableHistoryImport:         pulumi.Bool(false),
			NotificationConfig: &healthcare.FhirStoreNotificationConfigArgs{
				PubsubTopic: topic.ID(),
			},
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Healthcare Fhir Store Streaming Config

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/bigquery"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		bqDataset, err := bigquery.NewDataset(ctx, "bqDataset", &bigquery.DatasetArgs{
			DatasetId:               pulumi.String("bq_example_dataset"),
			FriendlyName:            pulumi.String("test"),
			Description:             pulumi.String("This is a test description"),
			Location:                pulumi.String("US"),
			DeleteContentsOnDestroy: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewFhirStore(ctx, "_default", &healthcare.FhirStoreArgs{
			Dataset:                     dataset.ID(),
			Version:                     pulumi.String("R4"),
			EnableUpdateCreate:          pulumi.Bool(false),
			DisableReferentialIntegrity: pulumi.Bool(false),
			DisableResourceVersioning:   pulumi.Bool(false),
			EnableHistoryImport:         pulumi.Bool(false),
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
			StreamConfigs: healthcare.FhirStoreStreamConfigArray{
				&healthcare.FhirStoreStreamConfigArgs{
					ResourceTypes: pulumi.StringArray{
						pulumi.String("Observation"),
					},
					BigqueryDestination: &healthcare.FhirStoreStreamConfigBigqueryDestinationArgs{
						DatasetUri: pulumi.All(bqDataset.Project, bqDataset.DatasetId).ApplyT(func(_args []interface{}) (string, error) {
							project := _args[0].(string)
							datasetId := _args[1].(string)
							return fmt.Sprintf("%v%v%v%v", "bq://", project, ".", datasetId), nil
						}).(pulumi.StringOutput),
						SchemaConfig: &healthcare.FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs{
							RecursiveStructureDepth: pulumi.Int(3),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = pubsub.NewTopic(ctx, "topic", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

FhirStore can be imported using any of these accepted formats

```sh

$ pulumi import gcp:healthcare/fhirStore:FhirStore default {{dataset}}/fhirStores/{{name}}

```

```sh

$ pulumi import gcp:healthcare/fhirStore:FhirStore default {{dataset}}/{{name}}

```

func GetFhirStore

func GetFhirStore(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FhirStoreState, opts ...pulumi.ResourceOption) (*FhirStore, error)

GetFhirStore gets an existing FhirStore resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFhirStore

func NewFhirStore(ctx *pulumi.Context,
	name string, args *FhirStoreArgs, opts ...pulumi.ResourceOption) (*FhirStore, error)

NewFhirStore registers a new resource with the given unique name, arguments, and options.

func (*FhirStore) ElementType

func (*FhirStore) ElementType() reflect.Type

func (*FhirStore) ToFhirStoreOutput

func (i *FhirStore) ToFhirStoreOutput() FhirStoreOutput

func (*FhirStore) ToFhirStoreOutputWithContext

func (i *FhirStore) ToFhirStoreOutputWithContext(ctx context.Context) FhirStoreOutput

func (*FhirStore) ToFhirStorePtrOutput

func (i *FhirStore) ToFhirStorePtrOutput() FhirStorePtrOutput

func (*FhirStore) ToFhirStorePtrOutputWithContext

func (i *FhirStore) ToFhirStorePtrOutputWithContext(ctx context.Context) FhirStorePtrOutput

type FhirStoreArgs

type FhirStoreArgs struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringInput
	// Whether to disable referential integrity in this FHIR store. This field is immutable after FHIR store
	// creation. The default value is false, meaning that the API will enforce referential integrity and fail the
	// requests that will result in inconsistent state in the FHIR store. When this field is set to true, the API
	// will skip referential integrity check. Consequently, operations that rely on references, such as
	// Patient.get$everything, will not return all the results if broken references exist.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	DisableReferentialIntegrity pulumi.BoolPtrInput
	// Whether to disable resource versioning for this FHIR store. This field can not be changed after the creation
	// of FHIR store. If set to false, which is the default behavior, all write operations will cause historical
	// versions to be recorded automatically. The historical versions can be fetched through the history APIs, but
	// cannot be updated. If set to true, no historical versions will be kept. The server will send back errors for
	// attempts to read the historical versions.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	DisableResourceVersioning pulumi.BoolPtrInput
	// Whether to allow the bulk import API to accept history bundles and directly insert historical resource
	// versions into the FHIR store. Importing resource histories creates resource interactions that appear to have
	// occurred in the past, which clients may not want to allow. If set to false, history bundles within an import
	// will fail with an error.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	// ** This property can be changed manually in the Google Cloud Healthcare admin console without recreating the FHIR store **
	EnableHistoryImport pulumi.BoolPtrInput
	// Whether this FHIR store has the updateCreate capability. This determines if the client can use an Update
	// operation to create a new resource with a client-specified ID. If false, all IDs are server-assigned through
	// the Create operation and attempts to Update a non-existent resource will return errors. Please treat the audit
	// logs with appropriate levels of care if client-specified resource IDs contain sensitive data such as patient
	// identifiers, those IDs will be part of the FHIR resource path recorded in Cloud audit logs and Cloud Pub/Sub
	// notifications.
	EnableUpdateCreate pulumi.BoolPtrInput
	// User-supplied key-value pairs used to organize FHIR stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The resource name for the FhirStore.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	Name pulumi.StringPtrInput
	// A nested object resource
	// Structure is documented below.
	NotificationConfig FhirStoreNotificationConfigPtrInput
	// A list of streaming configs that configure the destinations of streaming export for every resource mutation in
	// this FHIR store. Each store is allowed to have up to 10 streaming configs. After a new config is added, the next
	// resource mutation is streamed to the new location in addition to the existing ones. When a location is removed
	// from the list, the server stops streaming to that location. Before adding a new config, you must add the required
	// bigquery.dataEditor role to your project's Cloud Healthcare Service Agent service account. Some lag (typically on
	// the order of dozens of seconds) is expected before the results show up in the streaming destination.
	// Structure is documented below.
	StreamConfigs FhirStoreStreamConfigArrayInput
	// The FHIR specification version.
	// Default value is `STU3`.
	// Possible values are `DSTU2`, `STU3`, and `R4`.
	Version pulumi.StringPtrInput
}

The set of arguments for constructing a FhirStore resource.

func (FhirStoreArgs) ElementType

func (FhirStoreArgs) ElementType() reflect.Type

type FhirStoreArray

type FhirStoreArray []FhirStoreInput

func (FhirStoreArray) ElementType

func (FhirStoreArray) ElementType() reflect.Type

func (FhirStoreArray) ToFhirStoreArrayOutput

func (i FhirStoreArray) ToFhirStoreArrayOutput() FhirStoreArrayOutput

func (FhirStoreArray) ToFhirStoreArrayOutputWithContext

func (i FhirStoreArray) ToFhirStoreArrayOutputWithContext(ctx context.Context) FhirStoreArrayOutput

type FhirStoreArrayInput

type FhirStoreArrayInput interface {
	pulumi.Input

	ToFhirStoreArrayOutput() FhirStoreArrayOutput
	ToFhirStoreArrayOutputWithContext(context.Context) FhirStoreArrayOutput
}

FhirStoreArrayInput is an input type that accepts FhirStoreArray and FhirStoreArrayOutput values. You can construct a concrete instance of `FhirStoreArrayInput` via:

FhirStoreArray{ FhirStoreArgs{...} }

type FhirStoreArrayOutput

type FhirStoreArrayOutput struct{ *pulumi.OutputState }

func (FhirStoreArrayOutput) ElementType

func (FhirStoreArrayOutput) ElementType() reflect.Type

func (FhirStoreArrayOutput) Index

func (FhirStoreArrayOutput) ToFhirStoreArrayOutput

func (o FhirStoreArrayOutput) ToFhirStoreArrayOutput() FhirStoreArrayOutput

func (FhirStoreArrayOutput) ToFhirStoreArrayOutputWithContext

func (o FhirStoreArrayOutput) ToFhirStoreArrayOutputWithContext(ctx context.Context) FhirStoreArrayOutput

type FhirStoreIamBinding

type FhirStoreIamBinding struct {
	pulumi.CustomResourceState

	Condition FhirStoreIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the FHIR store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringOutput      `pulumi:"fhirStoreId"`
	Members     pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `healthcare.FhirStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare FHIR store. Each of these resources serves a different use case:

* `healthcare.FhirStoreIamPolicy`: Authoritative. Sets the IAM policy for the FHIR store and replaces any existing policy already attached. * `healthcare.FhirStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the FHIR store are preserved. * `healthcare.FhirStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the FHIR store are preserved.

> **Note:** `healthcare.FhirStoreIamPolicy` **cannot** be used in conjunction with `healthcare.FhirStoreIamBinding` and `healthcare.FhirStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.FhirStoreIamBinding` resources **can be** used in conjunction with `healthcare.FhirStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_fhir\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewFhirStoreIamPolicy(ctx, "fhirStore", &healthcare.FhirStoreIamPolicyArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			PolicyData:  pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_fhir\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewFhirStoreIamBinding(ctx, "fhirStore", &healthcare.FhirStoreIamBindingArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_fhir\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewFhirStoreIamMember(ctx, "fhirStore", &healthcare.FhirStoreIamMemberArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			Member:      pulumi.String("user:jane@example.com"),
			Role:        pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `fhir_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamBinding:FhirStoreIamBinding fhir_store_iam "your-project-id/location-name/dataset-name/fhir-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `fhir_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamBinding:FhirStoreIamBinding fhir_store_iam "your-project-id/location-name/dataset-name/fhir-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `fhir_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamBinding:FhirStoreIamBinding fhir_store_iam your-project-id/location-name/dataset-name/fhir-store-name

```

func GetFhirStoreIamBinding

func GetFhirStoreIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FhirStoreIamBindingState, opts ...pulumi.ResourceOption) (*FhirStoreIamBinding, error)

GetFhirStoreIamBinding gets an existing FhirStoreIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFhirStoreIamBinding

func NewFhirStoreIamBinding(ctx *pulumi.Context,
	name string, args *FhirStoreIamBindingArgs, opts ...pulumi.ResourceOption) (*FhirStoreIamBinding, error)

NewFhirStoreIamBinding registers a new resource with the given unique name, arguments, and options.

func (*FhirStoreIamBinding) ElementType

func (*FhirStoreIamBinding) ElementType() reflect.Type

func (*FhirStoreIamBinding) ToFhirStoreIamBindingOutput

func (i *FhirStoreIamBinding) ToFhirStoreIamBindingOutput() FhirStoreIamBindingOutput

func (*FhirStoreIamBinding) ToFhirStoreIamBindingOutputWithContext

func (i *FhirStoreIamBinding) ToFhirStoreIamBindingOutputWithContext(ctx context.Context) FhirStoreIamBindingOutput

func (*FhirStoreIamBinding) ToFhirStoreIamBindingPtrOutput

func (i *FhirStoreIamBinding) ToFhirStoreIamBindingPtrOutput() FhirStoreIamBindingPtrOutput

func (*FhirStoreIamBinding) ToFhirStoreIamBindingPtrOutputWithContext

func (i *FhirStoreIamBinding) ToFhirStoreIamBindingPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingPtrOutput

type FhirStoreIamBindingArgs

type FhirStoreIamBindingArgs struct {
	Condition FhirStoreIamBindingConditionPtrInput
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringInput
	Members     pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.FhirStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a FhirStoreIamBinding resource.

func (FhirStoreIamBindingArgs) ElementType

func (FhirStoreIamBindingArgs) ElementType() reflect.Type

type FhirStoreIamBindingArray

type FhirStoreIamBindingArray []FhirStoreIamBindingInput

func (FhirStoreIamBindingArray) ElementType

func (FhirStoreIamBindingArray) ElementType() reflect.Type

func (FhirStoreIamBindingArray) ToFhirStoreIamBindingArrayOutput

func (i FhirStoreIamBindingArray) ToFhirStoreIamBindingArrayOutput() FhirStoreIamBindingArrayOutput

func (FhirStoreIamBindingArray) ToFhirStoreIamBindingArrayOutputWithContext

func (i FhirStoreIamBindingArray) ToFhirStoreIamBindingArrayOutputWithContext(ctx context.Context) FhirStoreIamBindingArrayOutput

type FhirStoreIamBindingArrayInput

type FhirStoreIamBindingArrayInput interface {
	pulumi.Input

	ToFhirStoreIamBindingArrayOutput() FhirStoreIamBindingArrayOutput
	ToFhirStoreIamBindingArrayOutputWithContext(context.Context) FhirStoreIamBindingArrayOutput
}

FhirStoreIamBindingArrayInput is an input type that accepts FhirStoreIamBindingArray and FhirStoreIamBindingArrayOutput values. You can construct a concrete instance of `FhirStoreIamBindingArrayInput` via:

FhirStoreIamBindingArray{ FhirStoreIamBindingArgs{...} }

type FhirStoreIamBindingArrayOutput

type FhirStoreIamBindingArrayOutput struct{ *pulumi.OutputState }

func (FhirStoreIamBindingArrayOutput) ElementType

func (FhirStoreIamBindingArrayOutput) Index

func (FhirStoreIamBindingArrayOutput) ToFhirStoreIamBindingArrayOutput

func (o FhirStoreIamBindingArrayOutput) ToFhirStoreIamBindingArrayOutput() FhirStoreIamBindingArrayOutput

func (FhirStoreIamBindingArrayOutput) ToFhirStoreIamBindingArrayOutputWithContext

func (o FhirStoreIamBindingArrayOutput) ToFhirStoreIamBindingArrayOutputWithContext(ctx context.Context) FhirStoreIamBindingArrayOutput

type FhirStoreIamBindingCondition

type FhirStoreIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type FhirStoreIamBindingConditionArgs

type FhirStoreIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (FhirStoreIamBindingConditionArgs) ElementType

func (FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionOutput

func (i FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionOutput() FhirStoreIamBindingConditionOutput

func (FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionOutputWithContext

func (i FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionOutputWithContext(ctx context.Context) FhirStoreIamBindingConditionOutput

func (FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionPtrOutput

func (i FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionPtrOutput() FhirStoreIamBindingConditionPtrOutput

func (FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionPtrOutputWithContext

func (i FhirStoreIamBindingConditionArgs) ToFhirStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingConditionPtrOutput

type FhirStoreIamBindingConditionInput

type FhirStoreIamBindingConditionInput interface {
	pulumi.Input

	ToFhirStoreIamBindingConditionOutput() FhirStoreIamBindingConditionOutput
	ToFhirStoreIamBindingConditionOutputWithContext(context.Context) FhirStoreIamBindingConditionOutput
}

FhirStoreIamBindingConditionInput is an input type that accepts FhirStoreIamBindingConditionArgs and FhirStoreIamBindingConditionOutput values. You can construct a concrete instance of `FhirStoreIamBindingConditionInput` via:

FhirStoreIamBindingConditionArgs{...}

type FhirStoreIamBindingConditionOutput

type FhirStoreIamBindingConditionOutput struct{ *pulumi.OutputState }

func (FhirStoreIamBindingConditionOutput) Description

func (FhirStoreIamBindingConditionOutput) ElementType

func (FhirStoreIamBindingConditionOutput) Expression

func (FhirStoreIamBindingConditionOutput) Title

func (FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionOutput

func (o FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionOutput() FhirStoreIamBindingConditionOutput

func (FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionOutputWithContext

func (o FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionOutputWithContext(ctx context.Context) FhirStoreIamBindingConditionOutput

func (FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionPtrOutput

func (o FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionPtrOutput() FhirStoreIamBindingConditionPtrOutput

func (FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionPtrOutputWithContext

func (o FhirStoreIamBindingConditionOutput) ToFhirStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingConditionPtrOutput

type FhirStoreIamBindingConditionPtrInput

type FhirStoreIamBindingConditionPtrInput interface {
	pulumi.Input

	ToFhirStoreIamBindingConditionPtrOutput() FhirStoreIamBindingConditionPtrOutput
	ToFhirStoreIamBindingConditionPtrOutputWithContext(context.Context) FhirStoreIamBindingConditionPtrOutput
}

FhirStoreIamBindingConditionPtrInput is an input type that accepts FhirStoreIamBindingConditionArgs, FhirStoreIamBindingConditionPtr and FhirStoreIamBindingConditionPtrOutput values. You can construct a concrete instance of `FhirStoreIamBindingConditionPtrInput` via:

        FhirStoreIamBindingConditionArgs{...}

or:

        nil

type FhirStoreIamBindingConditionPtrOutput

type FhirStoreIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (FhirStoreIamBindingConditionPtrOutput) Description

func (FhirStoreIamBindingConditionPtrOutput) Elem

func (FhirStoreIamBindingConditionPtrOutput) ElementType

func (FhirStoreIamBindingConditionPtrOutput) Expression

func (FhirStoreIamBindingConditionPtrOutput) Title

func (FhirStoreIamBindingConditionPtrOutput) ToFhirStoreIamBindingConditionPtrOutput

func (o FhirStoreIamBindingConditionPtrOutput) ToFhirStoreIamBindingConditionPtrOutput() FhirStoreIamBindingConditionPtrOutput

func (FhirStoreIamBindingConditionPtrOutput) ToFhirStoreIamBindingConditionPtrOutputWithContext

func (o FhirStoreIamBindingConditionPtrOutput) ToFhirStoreIamBindingConditionPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingConditionPtrOutput

type FhirStoreIamBindingInput

type FhirStoreIamBindingInput interface {
	pulumi.Input

	ToFhirStoreIamBindingOutput() FhirStoreIamBindingOutput
	ToFhirStoreIamBindingOutputWithContext(ctx context.Context) FhirStoreIamBindingOutput
}

type FhirStoreIamBindingMap

type FhirStoreIamBindingMap map[string]FhirStoreIamBindingInput

func (FhirStoreIamBindingMap) ElementType

func (FhirStoreIamBindingMap) ElementType() reflect.Type

func (FhirStoreIamBindingMap) ToFhirStoreIamBindingMapOutput

func (i FhirStoreIamBindingMap) ToFhirStoreIamBindingMapOutput() FhirStoreIamBindingMapOutput

func (FhirStoreIamBindingMap) ToFhirStoreIamBindingMapOutputWithContext

func (i FhirStoreIamBindingMap) ToFhirStoreIamBindingMapOutputWithContext(ctx context.Context) FhirStoreIamBindingMapOutput

type FhirStoreIamBindingMapInput

type FhirStoreIamBindingMapInput interface {
	pulumi.Input

	ToFhirStoreIamBindingMapOutput() FhirStoreIamBindingMapOutput
	ToFhirStoreIamBindingMapOutputWithContext(context.Context) FhirStoreIamBindingMapOutput
}

FhirStoreIamBindingMapInput is an input type that accepts FhirStoreIamBindingMap and FhirStoreIamBindingMapOutput values. You can construct a concrete instance of `FhirStoreIamBindingMapInput` via:

FhirStoreIamBindingMap{ "key": FhirStoreIamBindingArgs{...} }

type FhirStoreIamBindingMapOutput

type FhirStoreIamBindingMapOutput struct{ *pulumi.OutputState }

func (FhirStoreIamBindingMapOutput) ElementType

func (FhirStoreIamBindingMapOutput) MapIndex

func (FhirStoreIamBindingMapOutput) ToFhirStoreIamBindingMapOutput

func (o FhirStoreIamBindingMapOutput) ToFhirStoreIamBindingMapOutput() FhirStoreIamBindingMapOutput

func (FhirStoreIamBindingMapOutput) ToFhirStoreIamBindingMapOutputWithContext

func (o FhirStoreIamBindingMapOutput) ToFhirStoreIamBindingMapOutputWithContext(ctx context.Context) FhirStoreIamBindingMapOutput

type FhirStoreIamBindingOutput

type FhirStoreIamBindingOutput struct{ *pulumi.OutputState }

func (FhirStoreIamBindingOutput) ElementType

func (FhirStoreIamBindingOutput) ElementType() reflect.Type

func (FhirStoreIamBindingOutput) ToFhirStoreIamBindingOutput

func (o FhirStoreIamBindingOutput) ToFhirStoreIamBindingOutput() FhirStoreIamBindingOutput

func (FhirStoreIamBindingOutput) ToFhirStoreIamBindingOutputWithContext

func (o FhirStoreIamBindingOutput) ToFhirStoreIamBindingOutputWithContext(ctx context.Context) FhirStoreIamBindingOutput

func (FhirStoreIamBindingOutput) ToFhirStoreIamBindingPtrOutput

func (o FhirStoreIamBindingOutput) ToFhirStoreIamBindingPtrOutput() FhirStoreIamBindingPtrOutput

func (FhirStoreIamBindingOutput) ToFhirStoreIamBindingPtrOutputWithContext

func (o FhirStoreIamBindingOutput) ToFhirStoreIamBindingPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingPtrOutput

type FhirStoreIamBindingPtrInput

type FhirStoreIamBindingPtrInput interface {
	pulumi.Input

	ToFhirStoreIamBindingPtrOutput() FhirStoreIamBindingPtrOutput
	ToFhirStoreIamBindingPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingPtrOutput
}

type FhirStoreIamBindingPtrOutput

type FhirStoreIamBindingPtrOutput struct{ *pulumi.OutputState }

func (FhirStoreIamBindingPtrOutput) Elem added in v5.21.0

func (FhirStoreIamBindingPtrOutput) ElementType

func (FhirStoreIamBindingPtrOutput) ToFhirStoreIamBindingPtrOutput

func (o FhirStoreIamBindingPtrOutput) ToFhirStoreIamBindingPtrOutput() FhirStoreIamBindingPtrOutput

func (FhirStoreIamBindingPtrOutput) ToFhirStoreIamBindingPtrOutputWithContext

func (o FhirStoreIamBindingPtrOutput) ToFhirStoreIamBindingPtrOutputWithContext(ctx context.Context) FhirStoreIamBindingPtrOutput

type FhirStoreIamBindingState

type FhirStoreIamBindingState struct {
	Condition FhirStoreIamBindingConditionPtrInput
	// (Computed) The etag of the FHIR store's IAM policy.
	Etag pulumi.StringPtrInput
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringPtrInput
	Members     pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.FhirStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (FhirStoreIamBindingState) ElementType

func (FhirStoreIamBindingState) ElementType() reflect.Type

type FhirStoreIamMember

type FhirStoreIamMember struct {
	pulumi.CustomResourceState

	Condition FhirStoreIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the FHIR store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringOutput `pulumi:"fhirStoreId"`
	Member      pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `healthcare.FhirStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare FHIR store. Each of these resources serves a different use case:

* `healthcare.FhirStoreIamPolicy`: Authoritative. Sets the IAM policy for the FHIR store and replaces any existing policy already attached. * `healthcare.FhirStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the FHIR store are preserved. * `healthcare.FhirStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the FHIR store are preserved.

> **Note:** `healthcare.FhirStoreIamPolicy` **cannot** be used in conjunction with `healthcare.FhirStoreIamBinding` and `healthcare.FhirStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.FhirStoreIamBinding` resources **can be** used in conjunction with `healthcare.FhirStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_fhir\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewFhirStoreIamPolicy(ctx, "fhirStore", &healthcare.FhirStoreIamPolicyArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			PolicyData:  pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_fhir\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewFhirStoreIamBinding(ctx, "fhirStore", &healthcare.FhirStoreIamBindingArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_fhir\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewFhirStoreIamMember(ctx, "fhirStore", &healthcare.FhirStoreIamMemberArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			Member:      pulumi.String("user:jane@example.com"),
			Role:        pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `fhir_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamMember:FhirStoreIamMember fhir_store_iam "your-project-id/location-name/dataset-name/fhir-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `fhir_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamMember:FhirStoreIamMember fhir_store_iam "your-project-id/location-name/dataset-name/fhir-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `fhir_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamMember:FhirStoreIamMember fhir_store_iam your-project-id/location-name/dataset-name/fhir-store-name

```

func GetFhirStoreIamMember

func GetFhirStoreIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FhirStoreIamMemberState, opts ...pulumi.ResourceOption) (*FhirStoreIamMember, error)

GetFhirStoreIamMember gets an existing FhirStoreIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFhirStoreIamMember

func NewFhirStoreIamMember(ctx *pulumi.Context,
	name string, args *FhirStoreIamMemberArgs, opts ...pulumi.ResourceOption) (*FhirStoreIamMember, error)

NewFhirStoreIamMember registers a new resource with the given unique name, arguments, and options.

func (*FhirStoreIamMember) ElementType

func (*FhirStoreIamMember) ElementType() reflect.Type

func (*FhirStoreIamMember) ToFhirStoreIamMemberOutput

func (i *FhirStoreIamMember) ToFhirStoreIamMemberOutput() FhirStoreIamMemberOutput

func (*FhirStoreIamMember) ToFhirStoreIamMemberOutputWithContext

func (i *FhirStoreIamMember) ToFhirStoreIamMemberOutputWithContext(ctx context.Context) FhirStoreIamMemberOutput

func (*FhirStoreIamMember) ToFhirStoreIamMemberPtrOutput

func (i *FhirStoreIamMember) ToFhirStoreIamMemberPtrOutput() FhirStoreIamMemberPtrOutput

func (*FhirStoreIamMember) ToFhirStoreIamMemberPtrOutputWithContext

func (i *FhirStoreIamMember) ToFhirStoreIamMemberPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberPtrOutput

type FhirStoreIamMemberArgs

type FhirStoreIamMemberArgs struct {
	Condition FhirStoreIamMemberConditionPtrInput
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringInput
	Member      pulumi.StringInput
	// The role that should be applied. Only one
	// `healthcare.FhirStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a FhirStoreIamMember resource.

func (FhirStoreIamMemberArgs) ElementType

func (FhirStoreIamMemberArgs) ElementType() reflect.Type

type FhirStoreIamMemberArray

type FhirStoreIamMemberArray []FhirStoreIamMemberInput

func (FhirStoreIamMemberArray) ElementType

func (FhirStoreIamMemberArray) ElementType() reflect.Type

func (FhirStoreIamMemberArray) ToFhirStoreIamMemberArrayOutput

func (i FhirStoreIamMemberArray) ToFhirStoreIamMemberArrayOutput() FhirStoreIamMemberArrayOutput

func (FhirStoreIamMemberArray) ToFhirStoreIamMemberArrayOutputWithContext

func (i FhirStoreIamMemberArray) ToFhirStoreIamMemberArrayOutputWithContext(ctx context.Context) FhirStoreIamMemberArrayOutput

type FhirStoreIamMemberArrayInput

type FhirStoreIamMemberArrayInput interface {
	pulumi.Input

	ToFhirStoreIamMemberArrayOutput() FhirStoreIamMemberArrayOutput
	ToFhirStoreIamMemberArrayOutputWithContext(context.Context) FhirStoreIamMemberArrayOutput
}

FhirStoreIamMemberArrayInput is an input type that accepts FhirStoreIamMemberArray and FhirStoreIamMemberArrayOutput values. You can construct a concrete instance of `FhirStoreIamMemberArrayInput` via:

FhirStoreIamMemberArray{ FhirStoreIamMemberArgs{...} }

type FhirStoreIamMemberArrayOutput

type FhirStoreIamMemberArrayOutput struct{ *pulumi.OutputState }

func (FhirStoreIamMemberArrayOutput) ElementType

func (FhirStoreIamMemberArrayOutput) Index

func (FhirStoreIamMemberArrayOutput) ToFhirStoreIamMemberArrayOutput

func (o FhirStoreIamMemberArrayOutput) ToFhirStoreIamMemberArrayOutput() FhirStoreIamMemberArrayOutput

func (FhirStoreIamMemberArrayOutput) ToFhirStoreIamMemberArrayOutputWithContext

func (o FhirStoreIamMemberArrayOutput) ToFhirStoreIamMemberArrayOutputWithContext(ctx context.Context) FhirStoreIamMemberArrayOutput

type FhirStoreIamMemberCondition

type FhirStoreIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type FhirStoreIamMemberConditionArgs

type FhirStoreIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (FhirStoreIamMemberConditionArgs) ElementType

func (FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionOutput

func (i FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionOutput() FhirStoreIamMemberConditionOutput

func (FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionOutputWithContext

func (i FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionOutputWithContext(ctx context.Context) FhirStoreIamMemberConditionOutput

func (FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionPtrOutput

func (i FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionPtrOutput() FhirStoreIamMemberConditionPtrOutput

func (FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionPtrOutputWithContext

func (i FhirStoreIamMemberConditionArgs) ToFhirStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberConditionPtrOutput

type FhirStoreIamMemberConditionInput

type FhirStoreIamMemberConditionInput interface {
	pulumi.Input

	ToFhirStoreIamMemberConditionOutput() FhirStoreIamMemberConditionOutput
	ToFhirStoreIamMemberConditionOutputWithContext(context.Context) FhirStoreIamMemberConditionOutput
}

FhirStoreIamMemberConditionInput is an input type that accepts FhirStoreIamMemberConditionArgs and FhirStoreIamMemberConditionOutput values. You can construct a concrete instance of `FhirStoreIamMemberConditionInput` via:

FhirStoreIamMemberConditionArgs{...}

type FhirStoreIamMemberConditionOutput

type FhirStoreIamMemberConditionOutput struct{ *pulumi.OutputState }

func (FhirStoreIamMemberConditionOutput) Description

func (FhirStoreIamMemberConditionOutput) ElementType

func (FhirStoreIamMemberConditionOutput) Expression

func (FhirStoreIamMemberConditionOutput) Title

func (FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionOutput

func (o FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionOutput() FhirStoreIamMemberConditionOutput

func (FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionOutputWithContext

func (o FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionOutputWithContext(ctx context.Context) FhirStoreIamMemberConditionOutput

func (FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionPtrOutput

func (o FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionPtrOutput() FhirStoreIamMemberConditionPtrOutput

func (FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionPtrOutputWithContext

func (o FhirStoreIamMemberConditionOutput) ToFhirStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberConditionPtrOutput

type FhirStoreIamMemberConditionPtrInput

type FhirStoreIamMemberConditionPtrInput interface {
	pulumi.Input

	ToFhirStoreIamMemberConditionPtrOutput() FhirStoreIamMemberConditionPtrOutput
	ToFhirStoreIamMemberConditionPtrOutputWithContext(context.Context) FhirStoreIamMemberConditionPtrOutput
}

FhirStoreIamMemberConditionPtrInput is an input type that accepts FhirStoreIamMemberConditionArgs, FhirStoreIamMemberConditionPtr and FhirStoreIamMemberConditionPtrOutput values. You can construct a concrete instance of `FhirStoreIamMemberConditionPtrInput` via:

        FhirStoreIamMemberConditionArgs{...}

or:

        nil

type FhirStoreIamMemberConditionPtrOutput

type FhirStoreIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (FhirStoreIamMemberConditionPtrOutput) Description

func (FhirStoreIamMemberConditionPtrOutput) Elem

func (FhirStoreIamMemberConditionPtrOutput) ElementType

func (FhirStoreIamMemberConditionPtrOutput) Expression

func (FhirStoreIamMemberConditionPtrOutput) Title

func (FhirStoreIamMemberConditionPtrOutput) ToFhirStoreIamMemberConditionPtrOutput

func (o FhirStoreIamMemberConditionPtrOutput) ToFhirStoreIamMemberConditionPtrOutput() FhirStoreIamMemberConditionPtrOutput

func (FhirStoreIamMemberConditionPtrOutput) ToFhirStoreIamMemberConditionPtrOutputWithContext

func (o FhirStoreIamMemberConditionPtrOutput) ToFhirStoreIamMemberConditionPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberConditionPtrOutput

type FhirStoreIamMemberInput

type FhirStoreIamMemberInput interface {
	pulumi.Input

	ToFhirStoreIamMemberOutput() FhirStoreIamMemberOutput
	ToFhirStoreIamMemberOutputWithContext(ctx context.Context) FhirStoreIamMemberOutput
}

type FhirStoreIamMemberMap

type FhirStoreIamMemberMap map[string]FhirStoreIamMemberInput

func (FhirStoreIamMemberMap) ElementType

func (FhirStoreIamMemberMap) ElementType() reflect.Type

func (FhirStoreIamMemberMap) ToFhirStoreIamMemberMapOutput

func (i FhirStoreIamMemberMap) ToFhirStoreIamMemberMapOutput() FhirStoreIamMemberMapOutput

func (FhirStoreIamMemberMap) ToFhirStoreIamMemberMapOutputWithContext

func (i FhirStoreIamMemberMap) ToFhirStoreIamMemberMapOutputWithContext(ctx context.Context) FhirStoreIamMemberMapOutput

type FhirStoreIamMemberMapInput

type FhirStoreIamMemberMapInput interface {
	pulumi.Input

	ToFhirStoreIamMemberMapOutput() FhirStoreIamMemberMapOutput
	ToFhirStoreIamMemberMapOutputWithContext(context.Context) FhirStoreIamMemberMapOutput
}

FhirStoreIamMemberMapInput is an input type that accepts FhirStoreIamMemberMap and FhirStoreIamMemberMapOutput values. You can construct a concrete instance of `FhirStoreIamMemberMapInput` via:

FhirStoreIamMemberMap{ "key": FhirStoreIamMemberArgs{...} }

type FhirStoreIamMemberMapOutput

type FhirStoreIamMemberMapOutput struct{ *pulumi.OutputState }

func (FhirStoreIamMemberMapOutput) ElementType

func (FhirStoreIamMemberMapOutput) MapIndex

func (FhirStoreIamMemberMapOutput) ToFhirStoreIamMemberMapOutput

func (o FhirStoreIamMemberMapOutput) ToFhirStoreIamMemberMapOutput() FhirStoreIamMemberMapOutput

func (FhirStoreIamMemberMapOutput) ToFhirStoreIamMemberMapOutputWithContext

func (o FhirStoreIamMemberMapOutput) ToFhirStoreIamMemberMapOutputWithContext(ctx context.Context) FhirStoreIamMemberMapOutput

type FhirStoreIamMemberOutput

type FhirStoreIamMemberOutput struct{ *pulumi.OutputState }

func (FhirStoreIamMemberOutput) ElementType

func (FhirStoreIamMemberOutput) ElementType() reflect.Type

func (FhirStoreIamMemberOutput) ToFhirStoreIamMemberOutput

func (o FhirStoreIamMemberOutput) ToFhirStoreIamMemberOutput() FhirStoreIamMemberOutput

func (FhirStoreIamMemberOutput) ToFhirStoreIamMemberOutputWithContext

func (o FhirStoreIamMemberOutput) ToFhirStoreIamMemberOutputWithContext(ctx context.Context) FhirStoreIamMemberOutput

func (FhirStoreIamMemberOutput) ToFhirStoreIamMemberPtrOutput

func (o FhirStoreIamMemberOutput) ToFhirStoreIamMemberPtrOutput() FhirStoreIamMemberPtrOutput

func (FhirStoreIamMemberOutput) ToFhirStoreIamMemberPtrOutputWithContext

func (o FhirStoreIamMemberOutput) ToFhirStoreIamMemberPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberPtrOutput

type FhirStoreIamMemberPtrInput

type FhirStoreIamMemberPtrInput interface {
	pulumi.Input

	ToFhirStoreIamMemberPtrOutput() FhirStoreIamMemberPtrOutput
	ToFhirStoreIamMemberPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberPtrOutput
}

type FhirStoreIamMemberPtrOutput

type FhirStoreIamMemberPtrOutput struct{ *pulumi.OutputState }

func (FhirStoreIamMemberPtrOutput) Elem added in v5.21.0

func (FhirStoreIamMemberPtrOutput) ElementType

func (FhirStoreIamMemberPtrOutput) ToFhirStoreIamMemberPtrOutput

func (o FhirStoreIamMemberPtrOutput) ToFhirStoreIamMemberPtrOutput() FhirStoreIamMemberPtrOutput

func (FhirStoreIamMemberPtrOutput) ToFhirStoreIamMemberPtrOutputWithContext

func (o FhirStoreIamMemberPtrOutput) ToFhirStoreIamMemberPtrOutputWithContext(ctx context.Context) FhirStoreIamMemberPtrOutput

type FhirStoreIamMemberState

type FhirStoreIamMemberState struct {
	Condition FhirStoreIamMemberConditionPtrInput
	// (Computed) The etag of the FHIR store's IAM policy.
	Etag pulumi.StringPtrInput
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringPtrInput
	Member      pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `healthcare.FhirStoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (FhirStoreIamMemberState) ElementType

func (FhirStoreIamMemberState) ElementType() reflect.Type

type FhirStoreIamPolicy

type FhirStoreIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the FHIR store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringOutput `pulumi:"fhirStoreId"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Three different resources help you manage your IAM policy for Healthcare FHIR store. Each of these resources serves a different use case:

* `healthcare.FhirStoreIamPolicy`: Authoritative. Sets the IAM policy for the FHIR store and replaces any existing policy already attached. * `healthcare.FhirStoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the FHIR store are preserved. * `healthcare.FhirStoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the FHIR store are preserved.

> **Note:** `healthcare.FhirStoreIamPolicy` **cannot** be used in conjunction with `healthcare.FhirStoreIamBinding` and `healthcare.FhirStoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.FhirStoreIamBinding` resources **can be** used in conjunction with `healthcare.FhirStoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_fhir\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewFhirStoreIamPolicy(ctx, "fhirStore", &healthcare.FhirStoreIamPolicyArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			PolicyData:  pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_fhir\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewFhirStoreIamBinding(ctx, "fhirStore", &healthcare.FhirStoreIamBindingArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_fhir\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewFhirStoreIamMember(ctx, "fhirStore", &healthcare.FhirStoreIamMemberArgs{
			FhirStoreId: pulumi.String("your-fhir-store-id"),
			Member:      pulumi.String("user:jane@example.com"),
			Role:        pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `fhir_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamPolicy:FhirStoreIamPolicy fhir_store_iam "your-project-id/location-name/dataset-name/fhir-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `fhir_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamPolicy:FhirStoreIamPolicy fhir_store_iam "your-project-id/location-name/dataset-name/fhir-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `fhir_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/fhirStoreIamPolicy:FhirStoreIamPolicy fhir_store_iam your-project-id/location-name/dataset-name/fhir-store-name

```

func GetFhirStoreIamPolicy

func GetFhirStoreIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FhirStoreIamPolicyState, opts ...pulumi.ResourceOption) (*FhirStoreIamPolicy, error)

GetFhirStoreIamPolicy gets an existing FhirStoreIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFhirStoreIamPolicy

func NewFhirStoreIamPolicy(ctx *pulumi.Context,
	name string, args *FhirStoreIamPolicyArgs, opts ...pulumi.ResourceOption) (*FhirStoreIamPolicy, error)

NewFhirStoreIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*FhirStoreIamPolicy) ElementType

func (*FhirStoreIamPolicy) ElementType() reflect.Type

func (*FhirStoreIamPolicy) ToFhirStoreIamPolicyOutput

func (i *FhirStoreIamPolicy) ToFhirStoreIamPolicyOutput() FhirStoreIamPolicyOutput

func (*FhirStoreIamPolicy) ToFhirStoreIamPolicyOutputWithContext

func (i *FhirStoreIamPolicy) ToFhirStoreIamPolicyOutputWithContext(ctx context.Context) FhirStoreIamPolicyOutput

func (*FhirStoreIamPolicy) ToFhirStoreIamPolicyPtrOutput

func (i *FhirStoreIamPolicy) ToFhirStoreIamPolicyPtrOutput() FhirStoreIamPolicyPtrOutput

func (*FhirStoreIamPolicy) ToFhirStoreIamPolicyPtrOutputWithContext

func (i *FhirStoreIamPolicy) ToFhirStoreIamPolicyPtrOutputWithContext(ctx context.Context) FhirStoreIamPolicyPtrOutput

type FhirStoreIamPolicyArgs

type FhirStoreIamPolicyArgs struct {
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a FhirStoreIamPolicy resource.

func (FhirStoreIamPolicyArgs) ElementType

func (FhirStoreIamPolicyArgs) ElementType() reflect.Type

type FhirStoreIamPolicyArray

type FhirStoreIamPolicyArray []FhirStoreIamPolicyInput

func (FhirStoreIamPolicyArray) ElementType

func (FhirStoreIamPolicyArray) ElementType() reflect.Type

func (FhirStoreIamPolicyArray) ToFhirStoreIamPolicyArrayOutput

func (i FhirStoreIamPolicyArray) ToFhirStoreIamPolicyArrayOutput() FhirStoreIamPolicyArrayOutput

func (FhirStoreIamPolicyArray) ToFhirStoreIamPolicyArrayOutputWithContext

func (i FhirStoreIamPolicyArray) ToFhirStoreIamPolicyArrayOutputWithContext(ctx context.Context) FhirStoreIamPolicyArrayOutput

type FhirStoreIamPolicyArrayInput

type FhirStoreIamPolicyArrayInput interface {
	pulumi.Input

	ToFhirStoreIamPolicyArrayOutput() FhirStoreIamPolicyArrayOutput
	ToFhirStoreIamPolicyArrayOutputWithContext(context.Context) FhirStoreIamPolicyArrayOutput
}

FhirStoreIamPolicyArrayInput is an input type that accepts FhirStoreIamPolicyArray and FhirStoreIamPolicyArrayOutput values. You can construct a concrete instance of `FhirStoreIamPolicyArrayInput` via:

FhirStoreIamPolicyArray{ FhirStoreIamPolicyArgs{...} }

type FhirStoreIamPolicyArrayOutput

type FhirStoreIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (FhirStoreIamPolicyArrayOutput) ElementType

func (FhirStoreIamPolicyArrayOutput) Index

func (FhirStoreIamPolicyArrayOutput) ToFhirStoreIamPolicyArrayOutput

func (o FhirStoreIamPolicyArrayOutput) ToFhirStoreIamPolicyArrayOutput() FhirStoreIamPolicyArrayOutput

func (FhirStoreIamPolicyArrayOutput) ToFhirStoreIamPolicyArrayOutputWithContext

func (o FhirStoreIamPolicyArrayOutput) ToFhirStoreIamPolicyArrayOutputWithContext(ctx context.Context) FhirStoreIamPolicyArrayOutput

type FhirStoreIamPolicyInput

type FhirStoreIamPolicyInput interface {
	pulumi.Input

	ToFhirStoreIamPolicyOutput() FhirStoreIamPolicyOutput
	ToFhirStoreIamPolicyOutputWithContext(ctx context.Context) FhirStoreIamPolicyOutput
}

type FhirStoreIamPolicyMap

type FhirStoreIamPolicyMap map[string]FhirStoreIamPolicyInput

func (FhirStoreIamPolicyMap) ElementType

func (FhirStoreIamPolicyMap) ElementType() reflect.Type

func (FhirStoreIamPolicyMap) ToFhirStoreIamPolicyMapOutput

func (i FhirStoreIamPolicyMap) ToFhirStoreIamPolicyMapOutput() FhirStoreIamPolicyMapOutput

func (FhirStoreIamPolicyMap) ToFhirStoreIamPolicyMapOutputWithContext

func (i FhirStoreIamPolicyMap) ToFhirStoreIamPolicyMapOutputWithContext(ctx context.Context) FhirStoreIamPolicyMapOutput

type FhirStoreIamPolicyMapInput

type FhirStoreIamPolicyMapInput interface {
	pulumi.Input

	ToFhirStoreIamPolicyMapOutput() FhirStoreIamPolicyMapOutput
	ToFhirStoreIamPolicyMapOutputWithContext(context.Context) FhirStoreIamPolicyMapOutput
}

FhirStoreIamPolicyMapInput is an input type that accepts FhirStoreIamPolicyMap and FhirStoreIamPolicyMapOutput values. You can construct a concrete instance of `FhirStoreIamPolicyMapInput` via:

FhirStoreIamPolicyMap{ "key": FhirStoreIamPolicyArgs{...} }

type FhirStoreIamPolicyMapOutput

type FhirStoreIamPolicyMapOutput struct{ *pulumi.OutputState }

func (FhirStoreIamPolicyMapOutput) ElementType

func (FhirStoreIamPolicyMapOutput) MapIndex

func (FhirStoreIamPolicyMapOutput) ToFhirStoreIamPolicyMapOutput

func (o FhirStoreIamPolicyMapOutput) ToFhirStoreIamPolicyMapOutput() FhirStoreIamPolicyMapOutput

func (FhirStoreIamPolicyMapOutput) ToFhirStoreIamPolicyMapOutputWithContext

func (o FhirStoreIamPolicyMapOutput) ToFhirStoreIamPolicyMapOutputWithContext(ctx context.Context) FhirStoreIamPolicyMapOutput

type FhirStoreIamPolicyOutput

type FhirStoreIamPolicyOutput struct{ *pulumi.OutputState }

func (FhirStoreIamPolicyOutput) ElementType

func (FhirStoreIamPolicyOutput) ElementType() reflect.Type

func (FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyOutput

func (o FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyOutput() FhirStoreIamPolicyOutput

func (FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyOutputWithContext

func (o FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyOutputWithContext(ctx context.Context) FhirStoreIamPolicyOutput

func (FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyPtrOutput

func (o FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyPtrOutput() FhirStoreIamPolicyPtrOutput

func (FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyPtrOutputWithContext

func (o FhirStoreIamPolicyOutput) ToFhirStoreIamPolicyPtrOutputWithContext(ctx context.Context) FhirStoreIamPolicyPtrOutput

type FhirStoreIamPolicyPtrInput

type FhirStoreIamPolicyPtrInput interface {
	pulumi.Input

	ToFhirStoreIamPolicyPtrOutput() FhirStoreIamPolicyPtrOutput
	ToFhirStoreIamPolicyPtrOutputWithContext(ctx context.Context) FhirStoreIamPolicyPtrOutput
}

type FhirStoreIamPolicyPtrOutput

type FhirStoreIamPolicyPtrOutput struct{ *pulumi.OutputState }

func (FhirStoreIamPolicyPtrOutput) Elem added in v5.21.0

func (FhirStoreIamPolicyPtrOutput) ElementType

func (FhirStoreIamPolicyPtrOutput) ToFhirStoreIamPolicyPtrOutput

func (o FhirStoreIamPolicyPtrOutput) ToFhirStoreIamPolicyPtrOutput() FhirStoreIamPolicyPtrOutput

func (FhirStoreIamPolicyPtrOutput) ToFhirStoreIamPolicyPtrOutputWithContext

func (o FhirStoreIamPolicyPtrOutput) ToFhirStoreIamPolicyPtrOutputWithContext(ctx context.Context) FhirStoreIamPolicyPtrOutput

type FhirStoreIamPolicyState

type FhirStoreIamPolicyState struct {
	// (Computed) The etag of the FHIR store's IAM policy.
	Etag pulumi.StringPtrInput
	// The FHIR store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{fhir_store_name}` or
	// `{location_name}/{dataset_name}/{fhir_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	FhirStoreId pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
}

func (FhirStoreIamPolicyState) ElementType

func (FhirStoreIamPolicyState) ElementType() reflect.Type

type FhirStoreInput

type FhirStoreInput interface {
	pulumi.Input

	ToFhirStoreOutput() FhirStoreOutput
	ToFhirStoreOutputWithContext(ctx context.Context) FhirStoreOutput
}

type FhirStoreMap

type FhirStoreMap map[string]FhirStoreInput

func (FhirStoreMap) ElementType

func (FhirStoreMap) ElementType() reflect.Type

func (FhirStoreMap) ToFhirStoreMapOutput

func (i FhirStoreMap) ToFhirStoreMapOutput() FhirStoreMapOutput

func (FhirStoreMap) ToFhirStoreMapOutputWithContext

func (i FhirStoreMap) ToFhirStoreMapOutputWithContext(ctx context.Context) FhirStoreMapOutput

type FhirStoreMapInput

type FhirStoreMapInput interface {
	pulumi.Input

	ToFhirStoreMapOutput() FhirStoreMapOutput
	ToFhirStoreMapOutputWithContext(context.Context) FhirStoreMapOutput
}

FhirStoreMapInput is an input type that accepts FhirStoreMap and FhirStoreMapOutput values. You can construct a concrete instance of `FhirStoreMapInput` via:

FhirStoreMap{ "key": FhirStoreArgs{...} }

type FhirStoreMapOutput

type FhirStoreMapOutput struct{ *pulumi.OutputState }

func (FhirStoreMapOutput) ElementType

func (FhirStoreMapOutput) ElementType() reflect.Type

func (FhirStoreMapOutput) MapIndex

func (FhirStoreMapOutput) ToFhirStoreMapOutput

func (o FhirStoreMapOutput) ToFhirStoreMapOutput() FhirStoreMapOutput

func (FhirStoreMapOutput) ToFhirStoreMapOutputWithContext

func (o FhirStoreMapOutput) ToFhirStoreMapOutputWithContext(ctx context.Context) FhirStoreMapOutput

type FhirStoreNotificationConfig

type FhirStoreNotificationConfig struct {
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic string `pulumi:"pubsubTopic"`
}

type FhirStoreNotificationConfigArgs

type FhirStoreNotificationConfigArgs struct {
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic pulumi.StringInput `pulumi:"pubsubTopic"`
}

func (FhirStoreNotificationConfigArgs) ElementType

func (FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigOutput

func (i FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigOutput() FhirStoreNotificationConfigOutput

func (FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigOutputWithContext

func (i FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigOutputWithContext(ctx context.Context) FhirStoreNotificationConfigOutput

func (FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigPtrOutput

func (i FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigPtrOutput() FhirStoreNotificationConfigPtrOutput

func (FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigPtrOutputWithContext

func (i FhirStoreNotificationConfigArgs) ToFhirStoreNotificationConfigPtrOutputWithContext(ctx context.Context) FhirStoreNotificationConfigPtrOutput

type FhirStoreNotificationConfigInput

type FhirStoreNotificationConfigInput interface {
	pulumi.Input

	ToFhirStoreNotificationConfigOutput() FhirStoreNotificationConfigOutput
	ToFhirStoreNotificationConfigOutputWithContext(context.Context) FhirStoreNotificationConfigOutput
}

FhirStoreNotificationConfigInput is an input type that accepts FhirStoreNotificationConfigArgs and FhirStoreNotificationConfigOutput values. You can construct a concrete instance of `FhirStoreNotificationConfigInput` via:

FhirStoreNotificationConfigArgs{...}

type FhirStoreNotificationConfigOutput

type FhirStoreNotificationConfigOutput struct{ *pulumi.OutputState }

func (FhirStoreNotificationConfigOutput) ElementType

func (FhirStoreNotificationConfigOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigOutput

func (o FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigOutput() FhirStoreNotificationConfigOutput

func (FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigOutputWithContext

func (o FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigOutputWithContext(ctx context.Context) FhirStoreNotificationConfigOutput

func (FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigPtrOutput

func (o FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigPtrOutput() FhirStoreNotificationConfigPtrOutput

func (FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigPtrOutputWithContext

func (o FhirStoreNotificationConfigOutput) ToFhirStoreNotificationConfigPtrOutputWithContext(ctx context.Context) FhirStoreNotificationConfigPtrOutput

type FhirStoreNotificationConfigPtrInput

type FhirStoreNotificationConfigPtrInput interface {
	pulumi.Input

	ToFhirStoreNotificationConfigPtrOutput() FhirStoreNotificationConfigPtrOutput
	ToFhirStoreNotificationConfigPtrOutputWithContext(context.Context) FhirStoreNotificationConfigPtrOutput
}

FhirStoreNotificationConfigPtrInput is an input type that accepts FhirStoreNotificationConfigArgs, FhirStoreNotificationConfigPtr and FhirStoreNotificationConfigPtrOutput values. You can construct a concrete instance of `FhirStoreNotificationConfigPtrInput` via:

        FhirStoreNotificationConfigArgs{...}

or:

        nil

type FhirStoreNotificationConfigPtrOutput

type FhirStoreNotificationConfigPtrOutput struct{ *pulumi.OutputState }

func (FhirStoreNotificationConfigPtrOutput) Elem

func (FhirStoreNotificationConfigPtrOutput) ElementType

func (FhirStoreNotificationConfigPtrOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (FhirStoreNotificationConfigPtrOutput) ToFhirStoreNotificationConfigPtrOutput

func (o FhirStoreNotificationConfigPtrOutput) ToFhirStoreNotificationConfigPtrOutput() FhirStoreNotificationConfigPtrOutput

func (FhirStoreNotificationConfigPtrOutput) ToFhirStoreNotificationConfigPtrOutputWithContext

func (o FhirStoreNotificationConfigPtrOutput) ToFhirStoreNotificationConfigPtrOutputWithContext(ctx context.Context) FhirStoreNotificationConfigPtrOutput

type FhirStoreOutput

type FhirStoreOutput struct{ *pulumi.OutputState }

func (FhirStoreOutput) ElementType

func (FhirStoreOutput) ElementType() reflect.Type

func (FhirStoreOutput) ToFhirStoreOutput

func (o FhirStoreOutput) ToFhirStoreOutput() FhirStoreOutput

func (FhirStoreOutput) ToFhirStoreOutputWithContext

func (o FhirStoreOutput) ToFhirStoreOutputWithContext(ctx context.Context) FhirStoreOutput

func (FhirStoreOutput) ToFhirStorePtrOutput

func (o FhirStoreOutput) ToFhirStorePtrOutput() FhirStorePtrOutput

func (FhirStoreOutput) ToFhirStorePtrOutputWithContext

func (o FhirStoreOutput) ToFhirStorePtrOutputWithContext(ctx context.Context) FhirStorePtrOutput

type FhirStorePtrInput

type FhirStorePtrInput interface {
	pulumi.Input

	ToFhirStorePtrOutput() FhirStorePtrOutput
	ToFhirStorePtrOutputWithContext(ctx context.Context) FhirStorePtrOutput
}

type FhirStorePtrOutput

type FhirStorePtrOutput struct{ *pulumi.OutputState }

func (FhirStorePtrOutput) Elem added in v5.21.0

func (FhirStorePtrOutput) ElementType

func (FhirStorePtrOutput) ElementType() reflect.Type

func (FhirStorePtrOutput) ToFhirStorePtrOutput

func (o FhirStorePtrOutput) ToFhirStorePtrOutput() FhirStorePtrOutput

func (FhirStorePtrOutput) ToFhirStorePtrOutputWithContext

func (o FhirStorePtrOutput) ToFhirStorePtrOutputWithContext(ctx context.Context) FhirStorePtrOutput

type FhirStoreState

type FhirStoreState struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringPtrInput
	// Whether to disable referential integrity in this FHIR store. This field is immutable after FHIR store
	// creation. The default value is false, meaning that the API will enforce referential integrity and fail the
	// requests that will result in inconsistent state in the FHIR store. When this field is set to true, the API
	// will skip referential integrity check. Consequently, operations that rely on references, such as
	// Patient.get$everything, will not return all the results if broken references exist.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	DisableReferentialIntegrity pulumi.BoolPtrInput
	// Whether to disable resource versioning for this FHIR store. This field can not be changed after the creation
	// of FHIR store. If set to false, which is the default behavior, all write operations will cause historical
	// versions to be recorded automatically. The historical versions can be fetched through the history APIs, but
	// cannot be updated. If set to true, no historical versions will be kept. The server will send back errors for
	// attempts to read the historical versions.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	DisableResourceVersioning pulumi.BoolPtrInput
	// Whether to allow the bulk import API to accept history bundles and directly insert historical resource
	// versions into the FHIR store. Importing resource histories creates resource interactions that appear to have
	// occurred in the past, which clients may not want to allow. If set to false, history bundles within an import
	// will fail with an error.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	// ** This property can be changed manually in the Google Cloud Healthcare admin console without recreating the FHIR store **
	EnableHistoryImport pulumi.BoolPtrInput
	// Whether this FHIR store has the updateCreate capability. This determines if the client can use an Update
	// operation to create a new resource with a client-specified ID. If false, all IDs are server-assigned through
	// the Create operation and attempts to Update a non-existent resource will return errors. Please treat the audit
	// logs with appropriate levels of care if client-specified resource IDs contain sensitive data such as patient
	// identifiers, those IDs will be part of the FHIR resource path recorded in Cloud audit logs and Cloud Pub/Sub
	// notifications.
	EnableUpdateCreate pulumi.BoolPtrInput
	// User-supplied key-value pairs used to organize FHIR stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The resource name for the FhirStore.
	// ** Changing this property may recreate the FHIR store (removing all data) **
	Name pulumi.StringPtrInput
	// A nested object resource
	// Structure is documented below.
	NotificationConfig FhirStoreNotificationConfigPtrInput
	// The fully qualified name of this dataset
	SelfLink pulumi.StringPtrInput
	// A list of streaming configs that configure the destinations of streaming export for every resource mutation in
	// this FHIR store. Each store is allowed to have up to 10 streaming configs. After a new config is added, the next
	// resource mutation is streamed to the new location in addition to the existing ones. When a location is removed
	// from the list, the server stops streaming to that location. Before adding a new config, you must add the required
	// bigquery.dataEditor role to your project's Cloud Healthcare Service Agent service account. Some lag (typically on
	// the order of dozens of seconds) is expected before the results show up in the streaming destination.
	// Structure is documented below.
	StreamConfigs FhirStoreStreamConfigArrayInput
	// The FHIR specification version.
	// Default value is `STU3`.
	// Possible values are `DSTU2`, `STU3`, and `R4`.
	Version pulumi.StringPtrInput
}

func (FhirStoreState) ElementType

func (FhirStoreState) ElementType() reflect.Type

type FhirStoreStreamConfig

type FhirStoreStreamConfig struct {
	// The destination BigQuery structure that contains both the dataset location and corresponding schema config.
	// The output is organized in one table per resource type. The server reuses the existing tables (if any) that
	// are named after the resource types, e.g. "Patient", "Observation". When there is no existing table for a given
	// resource type, the server attempts to create one.
	// See the [streaming config reference](https://cloud.google.com/healthcare/docs/reference/rest/v1beta1/projects.locations.datasets.fhirStores#streamconfig) for more details.
	// Structure is documented below.
	BigqueryDestination FhirStoreStreamConfigBigqueryDestination `pulumi:"bigqueryDestination"`
	// Supply a FHIR resource type (such as "Patient" or "Observation"). See
	// https://www.hl7.org/fhir/valueset-resource-types.html for a list of all FHIR resource types. The server treats
	// an empty list as an intent to stream all the supported resource types in this FHIR store.
	ResourceTypes []string `pulumi:"resourceTypes"`
}

type FhirStoreStreamConfigArgs

type FhirStoreStreamConfigArgs struct {
	// The destination BigQuery structure that contains both the dataset location and corresponding schema config.
	// The output is organized in one table per resource type. The server reuses the existing tables (if any) that
	// are named after the resource types, e.g. "Patient", "Observation". When there is no existing table for a given
	// resource type, the server attempts to create one.
	// See the [streaming config reference](https://cloud.google.com/healthcare/docs/reference/rest/v1beta1/projects.locations.datasets.fhirStores#streamconfig) for more details.
	// Structure is documented below.
	BigqueryDestination FhirStoreStreamConfigBigqueryDestinationInput `pulumi:"bigqueryDestination"`
	// Supply a FHIR resource type (such as "Patient" or "Observation"). See
	// https://www.hl7.org/fhir/valueset-resource-types.html for a list of all FHIR resource types. The server treats
	// an empty list as an intent to stream all the supported resource types in this FHIR store.
	ResourceTypes pulumi.StringArrayInput `pulumi:"resourceTypes"`
}

func (FhirStoreStreamConfigArgs) ElementType

func (FhirStoreStreamConfigArgs) ElementType() reflect.Type

func (FhirStoreStreamConfigArgs) ToFhirStoreStreamConfigOutput

func (i FhirStoreStreamConfigArgs) ToFhirStoreStreamConfigOutput() FhirStoreStreamConfigOutput

func (FhirStoreStreamConfigArgs) ToFhirStoreStreamConfigOutputWithContext

func (i FhirStoreStreamConfigArgs) ToFhirStoreStreamConfigOutputWithContext(ctx context.Context) FhirStoreStreamConfigOutput

type FhirStoreStreamConfigArray

type FhirStoreStreamConfigArray []FhirStoreStreamConfigInput

func (FhirStoreStreamConfigArray) ElementType

func (FhirStoreStreamConfigArray) ElementType() reflect.Type

func (FhirStoreStreamConfigArray) ToFhirStoreStreamConfigArrayOutput

func (i FhirStoreStreamConfigArray) ToFhirStoreStreamConfigArrayOutput() FhirStoreStreamConfigArrayOutput

func (FhirStoreStreamConfigArray) ToFhirStoreStreamConfigArrayOutputWithContext

func (i FhirStoreStreamConfigArray) ToFhirStoreStreamConfigArrayOutputWithContext(ctx context.Context) FhirStoreStreamConfigArrayOutput

type FhirStoreStreamConfigArrayInput

type FhirStoreStreamConfigArrayInput interface {
	pulumi.Input

	ToFhirStoreStreamConfigArrayOutput() FhirStoreStreamConfigArrayOutput
	ToFhirStoreStreamConfigArrayOutputWithContext(context.Context) FhirStoreStreamConfigArrayOutput
}

FhirStoreStreamConfigArrayInput is an input type that accepts FhirStoreStreamConfigArray and FhirStoreStreamConfigArrayOutput values. You can construct a concrete instance of `FhirStoreStreamConfigArrayInput` via:

FhirStoreStreamConfigArray{ FhirStoreStreamConfigArgs{...} }

type FhirStoreStreamConfigArrayOutput

type FhirStoreStreamConfigArrayOutput struct{ *pulumi.OutputState }

func (FhirStoreStreamConfigArrayOutput) ElementType

func (FhirStoreStreamConfigArrayOutput) Index

func (FhirStoreStreamConfigArrayOutput) ToFhirStoreStreamConfigArrayOutput

func (o FhirStoreStreamConfigArrayOutput) ToFhirStoreStreamConfigArrayOutput() FhirStoreStreamConfigArrayOutput

func (FhirStoreStreamConfigArrayOutput) ToFhirStoreStreamConfigArrayOutputWithContext

func (o FhirStoreStreamConfigArrayOutput) ToFhirStoreStreamConfigArrayOutputWithContext(ctx context.Context) FhirStoreStreamConfigArrayOutput

type FhirStoreStreamConfigBigqueryDestination

type FhirStoreStreamConfigBigqueryDestination struct {
	// BigQuery URI to a dataset, up to 2000 characters long, in the format bq://projectId.bqDatasetId
	DatasetUri string `pulumi:"datasetUri"`
	// The configuration for the exported BigQuery schema.
	// Structure is documented below.
	SchemaConfig FhirStoreStreamConfigBigqueryDestinationSchemaConfig `pulumi:"schemaConfig"`
}

type FhirStoreStreamConfigBigqueryDestinationArgs

type FhirStoreStreamConfigBigqueryDestinationArgs struct {
	// BigQuery URI to a dataset, up to 2000 characters long, in the format bq://projectId.bqDatasetId
	DatasetUri pulumi.StringInput `pulumi:"datasetUri"`
	// The configuration for the exported BigQuery schema.
	// Structure is documented below.
	SchemaConfig FhirStoreStreamConfigBigqueryDestinationSchemaConfigInput `pulumi:"schemaConfig"`
}

func (FhirStoreStreamConfigBigqueryDestinationArgs) ElementType

func (FhirStoreStreamConfigBigqueryDestinationArgs) ToFhirStoreStreamConfigBigqueryDestinationOutput

func (i FhirStoreStreamConfigBigqueryDestinationArgs) ToFhirStoreStreamConfigBigqueryDestinationOutput() FhirStoreStreamConfigBigqueryDestinationOutput

func (FhirStoreStreamConfigBigqueryDestinationArgs) ToFhirStoreStreamConfigBigqueryDestinationOutputWithContext

func (i FhirStoreStreamConfigBigqueryDestinationArgs) ToFhirStoreStreamConfigBigqueryDestinationOutputWithContext(ctx context.Context) FhirStoreStreamConfigBigqueryDestinationOutput

type FhirStoreStreamConfigBigqueryDestinationInput

type FhirStoreStreamConfigBigqueryDestinationInput interface {
	pulumi.Input

	ToFhirStoreStreamConfigBigqueryDestinationOutput() FhirStoreStreamConfigBigqueryDestinationOutput
	ToFhirStoreStreamConfigBigqueryDestinationOutputWithContext(context.Context) FhirStoreStreamConfigBigqueryDestinationOutput
}

FhirStoreStreamConfigBigqueryDestinationInput is an input type that accepts FhirStoreStreamConfigBigqueryDestinationArgs and FhirStoreStreamConfigBigqueryDestinationOutput values. You can construct a concrete instance of `FhirStoreStreamConfigBigqueryDestinationInput` via:

FhirStoreStreamConfigBigqueryDestinationArgs{...}

type FhirStoreStreamConfigBigqueryDestinationOutput

type FhirStoreStreamConfigBigqueryDestinationOutput struct{ *pulumi.OutputState }

func (FhirStoreStreamConfigBigqueryDestinationOutput) DatasetUri

BigQuery URI to a dataset, up to 2000 characters long, in the format bq://projectId.bqDatasetId

func (FhirStoreStreamConfigBigqueryDestinationOutput) ElementType

func (FhirStoreStreamConfigBigqueryDestinationOutput) SchemaConfig

The configuration for the exported BigQuery schema. Structure is documented below.

func (FhirStoreStreamConfigBigqueryDestinationOutput) ToFhirStoreStreamConfigBigqueryDestinationOutput

func (o FhirStoreStreamConfigBigqueryDestinationOutput) ToFhirStoreStreamConfigBigqueryDestinationOutput() FhirStoreStreamConfigBigqueryDestinationOutput

func (FhirStoreStreamConfigBigqueryDestinationOutput) ToFhirStoreStreamConfigBigqueryDestinationOutputWithContext

func (o FhirStoreStreamConfigBigqueryDestinationOutput) ToFhirStoreStreamConfigBigqueryDestinationOutputWithContext(ctx context.Context) FhirStoreStreamConfigBigqueryDestinationOutput

type FhirStoreStreamConfigBigqueryDestinationSchemaConfig

type FhirStoreStreamConfigBigqueryDestinationSchemaConfig struct {
	// The depth for all recursive structures in the output analytics schema. For example, concept in the CodeSystem
	// resource is a recursive structure; when the depth is 2, the CodeSystem table will have a column called
	// concept.concept but not concept.concept.concept. If not specified or set to 0, the server will use the default
	// value 2. The maximum depth allowed is 5.
	RecursiveStructureDepth int `pulumi:"recursiveStructureDepth"`
	// Specifies the output schema type. Only ANALYTICS is supported at this time.
	// * ANALYTICS: Analytics schema defined by the FHIR community.
	//   See https://github.com/FHIR/sql-on-fhir/blob/master/sql-on-fhir.md.
	//   Default value is `ANALYTICS`.
	//   Possible values are `ANALYTICS`.
	SchemaType *string `pulumi:"schemaType"`
}

type FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs

type FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs struct {
	// The depth for all recursive structures in the output analytics schema. For example, concept in the CodeSystem
	// resource is a recursive structure; when the depth is 2, the CodeSystem table will have a column called
	// concept.concept but not concept.concept.concept. If not specified or set to 0, the server will use the default
	// value 2. The maximum depth allowed is 5.
	RecursiveStructureDepth pulumi.IntInput `pulumi:"recursiveStructureDepth"`
	// Specifies the output schema type. Only ANALYTICS is supported at this time.
	// * ANALYTICS: Analytics schema defined by the FHIR community.
	//   See https://github.com/FHIR/sql-on-fhir/blob/master/sql-on-fhir.md.
	//   Default value is `ANALYTICS`.
	//   Possible values are `ANALYTICS`.
	SchemaType pulumi.StringPtrInput `pulumi:"schemaType"`
}

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs) ElementType

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs) ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs) ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutputWithContext

func (i FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs) ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutputWithContext(ctx context.Context) FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput

type FhirStoreStreamConfigBigqueryDestinationSchemaConfigInput

type FhirStoreStreamConfigBigqueryDestinationSchemaConfigInput interface {
	pulumi.Input

	ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput() FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput
	ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutputWithContext(context.Context) FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput
}

FhirStoreStreamConfigBigqueryDestinationSchemaConfigInput is an input type that accepts FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs and FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput values. You can construct a concrete instance of `FhirStoreStreamConfigBigqueryDestinationSchemaConfigInput` via:

FhirStoreStreamConfigBigqueryDestinationSchemaConfigArgs{...}

type FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput

type FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput struct{ *pulumi.OutputState }

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput) ElementType

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput) RecursiveStructureDepth

The depth for all recursive structures in the output analytics schema. For example, concept in the CodeSystem resource is a recursive structure; when the depth is 2, the CodeSystem table will have a column called concept.concept but not concept.concept.concept. If not specified or set to 0, the server will use the default value 2. The maximum depth allowed is 5.

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput) SchemaType

Specifies the output schema type. Only ANALYTICS is supported at this time.

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput) ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput

func (FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput) ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutputWithContext

func (o FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput) ToFhirStoreStreamConfigBigqueryDestinationSchemaConfigOutputWithContext(ctx context.Context) FhirStoreStreamConfigBigqueryDestinationSchemaConfigOutput

type FhirStoreStreamConfigInput

type FhirStoreStreamConfigInput interface {
	pulumi.Input

	ToFhirStoreStreamConfigOutput() FhirStoreStreamConfigOutput
	ToFhirStoreStreamConfigOutputWithContext(context.Context) FhirStoreStreamConfigOutput
}

FhirStoreStreamConfigInput is an input type that accepts FhirStoreStreamConfigArgs and FhirStoreStreamConfigOutput values. You can construct a concrete instance of `FhirStoreStreamConfigInput` via:

FhirStoreStreamConfigArgs{...}

type FhirStoreStreamConfigOutput

type FhirStoreStreamConfigOutput struct{ *pulumi.OutputState }

func (FhirStoreStreamConfigOutput) BigqueryDestination

The destination BigQuery structure that contains both the dataset location and corresponding schema config. The output is organized in one table per resource type. The server reuses the existing tables (if any) that are named after the resource types, e.g. "Patient", "Observation". When there is no existing table for a given resource type, the server attempts to create one. See the [streaming config reference](https://cloud.google.com/healthcare/docs/reference/rest/v1beta1/projects.locations.datasets.fhirStores#streamconfig) for more details. Structure is documented below.

func (FhirStoreStreamConfigOutput) ElementType

func (FhirStoreStreamConfigOutput) ResourceTypes

Supply a FHIR resource type (such as "Patient" or "Observation"). See https://www.hl7.org/fhir/valueset-resource-types.html for a list of all FHIR resource types. The server treats an empty list as an intent to stream all the supported resource types in this FHIR store.

func (FhirStoreStreamConfigOutput) ToFhirStoreStreamConfigOutput

func (o FhirStoreStreamConfigOutput) ToFhirStoreStreamConfigOutput() FhirStoreStreamConfigOutput

func (FhirStoreStreamConfigOutput) ToFhirStoreStreamConfigOutputWithContext

func (o FhirStoreStreamConfigOutput) ToFhirStoreStreamConfigOutputWithContext(ctx context.Context) FhirStoreStreamConfigOutput

type Hl7Store

type Hl7Store struct {
	pulumi.CustomResourceState

	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringOutput `pulumi:"dataset"`
	// User-supplied key-value pairs used to organize HL7v2 stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// The resource name for the Hl7V2Store.
	// ** Changing this property may recreate the Hl7v2 store (removing all data) **
	Name pulumi.StringOutput `pulumi:"name"`
	// -
	// (Optional, Deprecated)
	// A nested object resource
	// Structure is documented below.
	//
	// Deprecated: This field has been replaced by notificationConfigs
	NotificationConfig Hl7StoreNotificationConfigPtrOutput `pulumi:"notificationConfig"`
	// A list of notification configs. Each configuration uses a filter to determine whether to publish a
	// message (both Ingest & Create) on the corresponding notification destination. Only the message name
	// is sent as part of the notification. Supplied by the client.
	// Structure is documented below.
	NotificationConfigs Hl7StoreNotificationConfigsArrayOutput `pulumi:"notificationConfigs"`
	// A nested object resource
	// Structure is documented below.
	ParserConfig Hl7StoreParserConfigOutput `pulumi:"parserConfig"`
	// The fully qualified name of this dataset
	SelfLink pulumi.StringOutput `pulumi:"selfLink"`
}

A Hl7V2Store is a datastore inside a Healthcare dataset that conforms to the FHIR (https://www.hl7.org/hl7V2/STU3/) standard for Healthcare information exchange

To get more information about Hl7V2Store, see:

* [API documentation](https://cloud.google.com/healthcare/docs/reference/rest/v1/projects.locations.datasets.hl7V2Stores) * How-to Guides

## Example Usage ### Healthcare Hl7 V2 Store Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/pubsub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		topic, err := pubsub.NewTopic(ctx, "topic", nil)
		if err != nil {
			return err
		}
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		})
		if err != nil {
			return err
		}
		_, err = healthcare.NewHl7Store(ctx, "store", &healthcare.Hl7StoreArgs{
			Dataset: dataset.ID(),
			NotificationConfigs: healthcare.Hl7StoreNotificationConfigsArray{
				&healthcare.Hl7StoreNotificationConfigsArgs{
					PubsubTopic: topic.ID(),
				},
			},
			Labels: pulumi.StringMap{
				"label1": pulumi.String("labelvalue1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Healthcare Hl7 V2 Store Parser Config

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = healthcare.NewHl7Store(ctx, "store", &healthcare.Hl7StoreArgs{
			Dataset: dataset.ID(),
			ParserConfig: &healthcare.Hl7StoreParserConfigArgs{
				AllowNullHeader:   pulumi.Bool(false),
				SegmentTerminator: pulumi.String("Jw=="),
				Schema:            pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"schemas\": [{\n", "    \"messageSchemaConfigs\": {\n", "      \"ADT_A01\": {\n", "        \"name\": \"ADT_A01\",\n", "        \"minOccurs\": 1,\n", "        \"maxOccurs\": 1,\n", "        \"members\": [{\n", "            \"segment\": {\n", "              \"type\": \"MSH\",\n", "              \"minOccurs\": 1,\n", "              \"maxOccurs\": 1\n", "            }\n", "          },\n", "          {\n", "            \"segment\": {\n", "              \"type\": \"EVN\",\n", "              \"minOccurs\": 1,\n", "              \"maxOccurs\": 1\n", "            }\n", "          },\n", "          {\n", "            \"segment\": {\n", "              \"type\": \"PID\",\n", "              \"minOccurs\": 1,\n", "              \"maxOccurs\": 1\n", "            }\n", "          },\n", "          {\n", "            \"segment\": {\n", "              \"type\": \"ZPD\",\n", "              \"minOccurs\": 1,\n", "              \"maxOccurs\": 1\n", "            }\n", "          },\n", "          {\n", "            \"segment\": {\n", "              \"type\": \"OBX\"\n", "            }\n", "          },\n", "          {\n", "            \"group\": {\n", "              \"name\": \"PROCEDURE\",\n", "              \"members\": [{\n", "                  \"segment\": {\n", "                    \"type\": \"PR1\",\n", "                    \"minOccurs\": 1,\n", "                    \"maxOccurs\": 1\n", "                  }\n", "                },\n", "                {\n", "                  \"segment\": {\n", "                    \"type\": \"ROL\"\n", "                  }\n", "                }\n", "              ]\n", "            }\n", "          },\n", "          {\n", "            \"segment\": {\n", "              \"type\": \"PDA\",\n", "              \"maxOccurs\": 1\n", "            }\n", "          }\n", "        ]\n", "      }\n", "    }\n", "  }],\n", "  \"types\": [{\n", "    \"type\": [{\n", "        \"name\": \"ZPD\",\n", "        \"primitive\": \"VARIES\"\n", "      }\n", "\n", "    ]\n", "  }],\n", "  \"ignoreMinOccurs\": true\n", "}\n")),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Healthcare Hl7 V2 Store Unschematized

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		dataset, err := healthcare.NewDataset(ctx, "dataset", &healthcare.DatasetArgs{
			Location: pulumi.String("us-central1"),
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		_, err = healthcare.NewHl7Store(ctx, "store", &healthcare.Hl7StoreArgs{
			Dataset: dataset.ID(),
			ParserConfig: &healthcare.Hl7StoreParserConfigArgs{
				AllowNullHeader:   pulumi.Bool(false),
				SegmentTerminator: pulumi.String("Jw=="),
				Version:           pulumi.String("V2"),
			},
		}, pulumi.Provider(google_beta))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Hl7V2Store can be imported using any of these accepted formats

```sh

$ pulumi import gcp:healthcare/hl7Store:Hl7Store default {{dataset}}/hl7V2Stores/{{name}}

```

```sh

$ pulumi import gcp:healthcare/hl7Store:Hl7Store default {{dataset}}/{{name}}

```

func GetHl7Store

func GetHl7Store(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *Hl7StoreState, opts ...pulumi.ResourceOption) (*Hl7Store, error)

GetHl7Store gets an existing Hl7Store resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHl7Store

func NewHl7Store(ctx *pulumi.Context,
	name string, args *Hl7StoreArgs, opts ...pulumi.ResourceOption) (*Hl7Store, error)

NewHl7Store registers a new resource with the given unique name, arguments, and options.

func (*Hl7Store) ElementType

func (*Hl7Store) ElementType() reflect.Type

func (*Hl7Store) ToHl7StoreOutput

func (i *Hl7Store) ToHl7StoreOutput() Hl7StoreOutput

func (*Hl7Store) ToHl7StoreOutputWithContext

func (i *Hl7Store) ToHl7StoreOutputWithContext(ctx context.Context) Hl7StoreOutput

func (*Hl7Store) ToHl7StorePtrOutput

func (i *Hl7Store) ToHl7StorePtrOutput() Hl7StorePtrOutput

func (*Hl7Store) ToHl7StorePtrOutputWithContext

func (i *Hl7Store) ToHl7StorePtrOutputWithContext(ctx context.Context) Hl7StorePtrOutput

type Hl7StoreArgs

type Hl7StoreArgs struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringInput
	// User-supplied key-value pairs used to organize HL7v2 stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The resource name for the Hl7V2Store.
	// ** Changing this property may recreate the Hl7v2 store (removing all data) **
	Name pulumi.StringPtrInput
	// -
	// (Optional, Deprecated)
	// A nested object resource
	// Structure is documented below.
	//
	// Deprecated: This field has been replaced by notificationConfigs
	NotificationConfig Hl7StoreNotificationConfigPtrInput
	// A list of notification configs. Each configuration uses a filter to determine whether to publish a
	// message (both Ingest & Create) on the corresponding notification destination. Only the message name
	// is sent as part of the notification. Supplied by the client.
	// Structure is documented below.
	NotificationConfigs Hl7StoreNotificationConfigsArrayInput
	// A nested object resource
	// Structure is documented below.
	ParserConfig Hl7StoreParserConfigPtrInput
}

The set of arguments for constructing a Hl7Store resource.

func (Hl7StoreArgs) ElementType

func (Hl7StoreArgs) ElementType() reflect.Type

type Hl7StoreArray

type Hl7StoreArray []Hl7StoreInput

func (Hl7StoreArray) ElementType

func (Hl7StoreArray) ElementType() reflect.Type

func (Hl7StoreArray) ToHl7StoreArrayOutput

func (i Hl7StoreArray) ToHl7StoreArrayOutput() Hl7StoreArrayOutput

func (Hl7StoreArray) ToHl7StoreArrayOutputWithContext

func (i Hl7StoreArray) ToHl7StoreArrayOutputWithContext(ctx context.Context) Hl7StoreArrayOutput

type Hl7StoreArrayInput

type Hl7StoreArrayInput interface {
	pulumi.Input

	ToHl7StoreArrayOutput() Hl7StoreArrayOutput
	ToHl7StoreArrayOutputWithContext(context.Context) Hl7StoreArrayOutput
}

Hl7StoreArrayInput is an input type that accepts Hl7StoreArray and Hl7StoreArrayOutput values. You can construct a concrete instance of `Hl7StoreArrayInput` via:

Hl7StoreArray{ Hl7StoreArgs{...} }

type Hl7StoreArrayOutput

type Hl7StoreArrayOutput struct{ *pulumi.OutputState }

func (Hl7StoreArrayOutput) ElementType

func (Hl7StoreArrayOutput) ElementType() reflect.Type

func (Hl7StoreArrayOutput) Index

func (Hl7StoreArrayOutput) ToHl7StoreArrayOutput

func (o Hl7StoreArrayOutput) ToHl7StoreArrayOutput() Hl7StoreArrayOutput

func (Hl7StoreArrayOutput) ToHl7StoreArrayOutputWithContext

func (o Hl7StoreArrayOutput) ToHl7StoreArrayOutputWithContext(ctx context.Context) Hl7StoreArrayOutput

type Hl7StoreIamBinding

type Hl7StoreIamBinding struct {
	pulumi.CustomResourceState

	Condition Hl7StoreIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the HL7v2 store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringOutput      `pulumi:"hl7V2StoreId"`
	Members      pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied. Only one
	// `healthcare.Hl7StoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare HL7v2 store. Each of these resources serves a different use case:

* `healthcare.Hl7StoreIamPolicy`: Authoritative. Sets the IAM policy for the HL7v2 store and replaces any existing policy already attached. * `healthcare.Hl7StoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the HL7v2 store are preserved. * `healthcare.Hl7StoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the HL7v2 store are preserved.

> **Note:** `healthcare.Hl7StoreIamPolicy` **cannot** be used in conjunction with `healthcare.Hl7StoreIamBinding` and `healthcare.Hl7StoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.Hl7StoreIamBinding` resources **can be** used in conjunction with `healthcare.Hl7StoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_hl7\_v2\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewHl7StoreIamPolicy(ctx, "hl7V2Store", &healthcare.Hl7StoreIamPolicyArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_hl7\_v2\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewHl7StoreIamBinding(ctx, "hl7V2Store", &healthcare.Hl7StoreIamBindingArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_hl7\_v2\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewHl7StoreIamMember(ctx, "hl7V2Store", &healthcare.Hl7StoreIamMemberArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			Member:       pulumi.String("user:jane@example.com"),
			Role:         pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `hl7_v2_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamBinding:Hl7StoreIamBinding hl7_v2_store_iam "your-project-id/location-name/dataset-name/hl7-v2-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `hl7_v2_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamBinding:Hl7StoreIamBinding hl7_v2_store_iam "your-project-id/location-name/dataset-name/hl7-v2-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `hl7_v2_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamBinding:Hl7StoreIamBinding hl7_v2_store_iam your-project-id/location-name/dataset-name/hl7-v2-store-name

```

func GetHl7StoreIamBinding

func GetHl7StoreIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *Hl7StoreIamBindingState, opts ...pulumi.ResourceOption) (*Hl7StoreIamBinding, error)

GetHl7StoreIamBinding gets an existing Hl7StoreIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHl7StoreIamBinding

func NewHl7StoreIamBinding(ctx *pulumi.Context,
	name string, args *Hl7StoreIamBindingArgs, opts ...pulumi.ResourceOption) (*Hl7StoreIamBinding, error)

NewHl7StoreIamBinding registers a new resource with the given unique name, arguments, and options.

func (*Hl7StoreIamBinding) ElementType

func (*Hl7StoreIamBinding) ElementType() reflect.Type

func (*Hl7StoreIamBinding) ToHl7StoreIamBindingOutput

func (i *Hl7StoreIamBinding) ToHl7StoreIamBindingOutput() Hl7StoreIamBindingOutput

func (*Hl7StoreIamBinding) ToHl7StoreIamBindingOutputWithContext

func (i *Hl7StoreIamBinding) ToHl7StoreIamBindingOutputWithContext(ctx context.Context) Hl7StoreIamBindingOutput

func (*Hl7StoreIamBinding) ToHl7StoreIamBindingPtrOutput

func (i *Hl7StoreIamBinding) ToHl7StoreIamBindingPtrOutput() Hl7StoreIamBindingPtrOutput

func (*Hl7StoreIamBinding) ToHl7StoreIamBindingPtrOutputWithContext

func (i *Hl7StoreIamBinding) ToHl7StoreIamBindingPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingPtrOutput

type Hl7StoreIamBindingArgs

type Hl7StoreIamBindingArgs struct {
	Condition Hl7StoreIamBindingConditionPtrInput
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringInput
	Members      pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.Hl7StoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a Hl7StoreIamBinding resource.

func (Hl7StoreIamBindingArgs) ElementType

func (Hl7StoreIamBindingArgs) ElementType() reflect.Type

type Hl7StoreIamBindingArray

type Hl7StoreIamBindingArray []Hl7StoreIamBindingInput

func (Hl7StoreIamBindingArray) ElementType

func (Hl7StoreIamBindingArray) ElementType() reflect.Type

func (Hl7StoreIamBindingArray) ToHl7StoreIamBindingArrayOutput

func (i Hl7StoreIamBindingArray) ToHl7StoreIamBindingArrayOutput() Hl7StoreIamBindingArrayOutput

func (Hl7StoreIamBindingArray) ToHl7StoreIamBindingArrayOutputWithContext

func (i Hl7StoreIamBindingArray) ToHl7StoreIamBindingArrayOutputWithContext(ctx context.Context) Hl7StoreIamBindingArrayOutput

type Hl7StoreIamBindingArrayInput

type Hl7StoreIamBindingArrayInput interface {
	pulumi.Input

	ToHl7StoreIamBindingArrayOutput() Hl7StoreIamBindingArrayOutput
	ToHl7StoreIamBindingArrayOutputWithContext(context.Context) Hl7StoreIamBindingArrayOutput
}

Hl7StoreIamBindingArrayInput is an input type that accepts Hl7StoreIamBindingArray and Hl7StoreIamBindingArrayOutput values. You can construct a concrete instance of `Hl7StoreIamBindingArrayInput` via:

Hl7StoreIamBindingArray{ Hl7StoreIamBindingArgs{...} }

type Hl7StoreIamBindingArrayOutput

type Hl7StoreIamBindingArrayOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamBindingArrayOutput) ElementType

func (Hl7StoreIamBindingArrayOutput) Index

func (Hl7StoreIamBindingArrayOutput) ToHl7StoreIamBindingArrayOutput

func (o Hl7StoreIamBindingArrayOutput) ToHl7StoreIamBindingArrayOutput() Hl7StoreIamBindingArrayOutput

func (Hl7StoreIamBindingArrayOutput) ToHl7StoreIamBindingArrayOutputWithContext

func (o Hl7StoreIamBindingArrayOutput) ToHl7StoreIamBindingArrayOutputWithContext(ctx context.Context) Hl7StoreIamBindingArrayOutput

type Hl7StoreIamBindingCondition

type Hl7StoreIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type Hl7StoreIamBindingConditionArgs

type Hl7StoreIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (Hl7StoreIamBindingConditionArgs) ElementType

func (Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionOutput

func (i Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionOutput() Hl7StoreIamBindingConditionOutput

func (Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionOutputWithContext

func (i Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionOutputWithContext(ctx context.Context) Hl7StoreIamBindingConditionOutput

func (Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionPtrOutput

func (i Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionPtrOutput() Hl7StoreIamBindingConditionPtrOutput

func (Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionPtrOutputWithContext

func (i Hl7StoreIamBindingConditionArgs) ToHl7StoreIamBindingConditionPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingConditionPtrOutput

type Hl7StoreIamBindingConditionInput

type Hl7StoreIamBindingConditionInput interface {
	pulumi.Input

	ToHl7StoreIamBindingConditionOutput() Hl7StoreIamBindingConditionOutput
	ToHl7StoreIamBindingConditionOutputWithContext(context.Context) Hl7StoreIamBindingConditionOutput
}

Hl7StoreIamBindingConditionInput is an input type that accepts Hl7StoreIamBindingConditionArgs and Hl7StoreIamBindingConditionOutput values. You can construct a concrete instance of `Hl7StoreIamBindingConditionInput` via:

Hl7StoreIamBindingConditionArgs{...}

type Hl7StoreIamBindingConditionOutput

type Hl7StoreIamBindingConditionOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamBindingConditionOutput) Description

func (Hl7StoreIamBindingConditionOutput) ElementType

func (Hl7StoreIamBindingConditionOutput) Expression

func (Hl7StoreIamBindingConditionOutput) Title

func (Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionOutput

func (o Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionOutput() Hl7StoreIamBindingConditionOutput

func (Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionOutputWithContext

func (o Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionOutputWithContext(ctx context.Context) Hl7StoreIamBindingConditionOutput

func (Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionPtrOutput

func (o Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionPtrOutput() Hl7StoreIamBindingConditionPtrOutput

func (Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionPtrOutputWithContext

func (o Hl7StoreIamBindingConditionOutput) ToHl7StoreIamBindingConditionPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingConditionPtrOutput

type Hl7StoreIamBindingConditionPtrInput

type Hl7StoreIamBindingConditionPtrInput interface {
	pulumi.Input

	ToHl7StoreIamBindingConditionPtrOutput() Hl7StoreIamBindingConditionPtrOutput
	ToHl7StoreIamBindingConditionPtrOutputWithContext(context.Context) Hl7StoreIamBindingConditionPtrOutput
}

Hl7StoreIamBindingConditionPtrInput is an input type that accepts Hl7StoreIamBindingConditionArgs, Hl7StoreIamBindingConditionPtr and Hl7StoreIamBindingConditionPtrOutput values. You can construct a concrete instance of `Hl7StoreIamBindingConditionPtrInput` via:

        Hl7StoreIamBindingConditionArgs{...}

or:

        nil

type Hl7StoreIamBindingConditionPtrOutput

type Hl7StoreIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamBindingConditionPtrOutput) Description

func (Hl7StoreIamBindingConditionPtrOutput) Elem

func (Hl7StoreIamBindingConditionPtrOutput) ElementType

func (Hl7StoreIamBindingConditionPtrOutput) Expression

func (Hl7StoreIamBindingConditionPtrOutput) Title

func (Hl7StoreIamBindingConditionPtrOutput) ToHl7StoreIamBindingConditionPtrOutput

func (o Hl7StoreIamBindingConditionPtrOutput) ToHl7StoreIamBindingConditionPtrOutput() Hl7StoreIamBindingConditionPtrOutput

func (Hl7StoreIamBindingConditionPtrOutput) ToHl7StoreIamBindingConditionPtrOutputWithContext

func (o Hl7StoreIamBindingConditionPtrOutput) ToHl7StoreIamBindingConditionPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingConditionPtrOutput

type Hl7StoreIamBindingInput

type Hl7StoreIamBindingInput interface {
	pulumi.Input

	ToHl7StoreIamBindingOutput() Hl7StoreIamBindingOutput
	ToHl7StoreIamBindingOutputWithContext(ctx context.Context) Hl7StoreIamBindingOutput
}

type Hl7StoreIamBindingMap

type Hl7StoreIamBindingMap map[string]Hl7StoreIamBindingInput

func (Hl7StoreIamBindingMap) ElementType

func (Hl7StoreIamBindingMap) ElementType() reflect.Type

func (Hl7StoreIamBindingMap) ToHl7StoreIamBindingMapOutput

func (i Hl7StoreIamBindingMap) ToHl7StoreIamBindingMapOutput() Hl7StoreIamBindingMapOutput

func (Hl7StoreIamBindingMap) ToHl7StoreIamBindingMapOutputWithContext

func (i Hl7StoreIamBindingMap) ToHl7StoreIamBindingMapOutputWithContext(ctx context.Context) Hl7StoreIamBindingMapOutput

type Hl7StoreIamBindingMapInput

type Hl7StoreIamBindingMapInput interface {
	pulumi.Input

	ToHl7StoreIamBindingMapOutput() Hl7StoreIamBindingMapOutput
	ToHl7StoreIamBindingMapOutputWithContext(context.Context) Hl7StoreIamBindingMapOutput
}

Hl7StoreIamBindingMapInput is an input type that accepts Hl7StoreIamBindingMap and Hl7StoreIamBindingMapOutput values. You can construct a concrete instance of `Hl7StoreIamBindingMapInput` via:

Hl7StoreIamBindingMap{ "key": Hl7StoreIamBindingArgs{...} }

type Hl7StoreIamBindingMapOutput

type Hl7StoreIamBindingMapOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamBindingMapOutput) ElementType

func (Hl7StoreIamBindingMapOutput) MapIndex

func (Hl7StoreIamBindingMapOutput) ToHl7StoreIamBindingMapOutput

func (o Hl7StoreIamBindingMapOutput) ToHl7StoreIamBindingMapOutput() Hl7StoreIamBindingMapOutput

func (Hl7StoreIamBindingMapOutput) ToHl7StoreIamBindingMapOutputWithContext

func (o Hl7StoreIamBindingMapOutput) ToHl7StoreIamBindingMapOutputWithContext(ctx context.Context) Hl7StoreIamBindingMapOutput

type Hl7StoreIamBindingOutput

type Hl7StoreIamBindingOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamBindingOutput) ElementType

func (Hl7StoreIamBindingOutput) ElementType() reflect.Type

func (Hl7StoreIamBindingOutput) ToHl7StoreIamBindingOutput

func (o Hl7StoreIamBindingOutput) ToHl7StoreIamBindingOutput() Hl7StoreIamBindingOutput

func (Hl7StoreIamBindingOutput) ToHl7StoreIamBindingOutputWithContext

func (o Hl7StoreIamBindingOutput) ToHl7StoreIamBindingOutputWithContext(ctx context.Context) Hl7StoreIamBindingOutput

func (Hl7StoreIamBindingOutput) ToHl7StoreIamBindingPtrOutput

func (o Hl7StoreIamBindingOutput) ToHl7StoreIamBindingPtrOutput() Hl7StoreIamBindingPtrOutput

func (Hl7StoreIamBindingOutput) ToHl7StoreIamBindingPtrOutputWithContext

func (o Hl7StoreIamBindingOutput) ToHl7StoreIamBindingPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingPtrOutput

type Hl7StoreIamBindingPtrInput

type Hl7StoreIamBindingPtrInput interface {
	pulumi.Input

	ToHl7StoreIamBindingPtrOutput() Hl7StoreIamBindingPtrOutput
	ToHl7StoreIamBindingPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingPtrOutput
}

type Hl7StoreIamBindingPtrOutput

type Hl7StoreIamBindingPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamBindingPtrOutput) Elem added in v5.21.0

func (Hl7StoreIamBindingPtrOutput) ElementType

func (Hl7StoreIamBindingPtrOutput) ToHl7StoreIamBindingPtrOutput

func (o Hl7StoreIamBindingPtrOutput) ToHl7StoreIamBindingPtrOutput() Hl7StoreIamBindingPtrOutput

func (Hl7StoreIamBindingPtrOutput) ToHl7StoreIamBindingPtrOutputWithContext

func (o Hl7StoreIamBindingPtrOutput) ToHl7StoreIamBindingPtrOutputWithContext(ctx context.Context) Hl7StoreIamBindingPtrOutput

type Hl7StoreIamBindingState

type Hl7StoreIamBindingState struct {
	Condition Hl7StoreIamBindingConditionPtrInput
	// (Computed) The etag of the HL7v2 store's IAM policy.
	Etag pulumi.StringPtrInput
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringPtrInput
	Members      pulumi.StringArrayInput
	// The role that should be applied. Only one
	// `healthcare.Hl7StoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (Hl7StoreIamBindingState) ElementType

func (Hl7StoreIamBindingState) ElementType() reflect.Type

type Hl7StoreIamMember

type Hl7StoreIamMember struct {
	pulumi.CustomResourceState

	Condition Hl7StoreIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the HL7v2 store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringOutput `pulumi:"hl7V2StoreId"`
	Member       pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied. Only one
	// `healthcare.Hl7StoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Healthcare HL7v2 store. Each of these resources serves a different use case:

* `healthcare.Hl7StoreIamPolicy`: Authoritative. Sets the IAM policy for the HL7v2 store and replaces any existing policy already attached. * `healthcare.Hl7StoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the HL7v2 store are preserved. * `healthcare.Hl7StoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the HL7v2 store are preserved.

> **Note:** `healthcare.Hl7StoreIamPolicy` **cannot** be used in conjunction with `healthcare.Hl7StoreIamBinding` and `healthcare.Hl7StoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.Hl7StoreIamBinding` resources **can be** used in conjunction with `healthcare.Hl7StoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_hl7\_v2\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewHl7StoreIamPolicy(ctx, "hl7V2Store", &healthcare.Hl7StoreIamPolicyArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_hl7\_v2\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewHl7StoreIamBinding(ctx, "hl7V2Store", &healthcare.Hl7StoreIamBindingArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_hl7\_v2\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewHl7StoreIamMember(ctx, "hl7V2Store", &healthcare.Hl7StoreIamMemberArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			Member:       pulumi.String("user:jane@example.com"),
			Role:         pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `hl7_v2_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamMember:Hl7StoreIamMember hl7_v2_store_iam "your-project-id/location-name/dataset-name/hl7-v2-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `hl7_v2_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamMember:Hl7StoreIamMember hl7_v2_store_iam "your-project-id/location-name/dataset-name/hl7-v2-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `hl7_v2_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamMember:Hl7StoreIamMember hl7_v2_store_iam your-project-id/location-name/dataset-name/hl7-v2-store-name

```

func GetHl7StoreIamMember

func GetHl7StoreIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *Hl7StoreIamMemberState, opts ...pulumi.ResourceOption) (*Hl7StoreIamMember, error)

GetHl7StoreIamMember gets an existing Hl7StoreIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHl7StoreIamMember

func NewHl7StoreIamMember(ctx *pulumi.Context,
	name string, args *Hl7StoreIamMemberArgs, opts ...pulumi.ResourceOption) (*Hl7StoreIamMember, error)

NewHl7StoreIamMember registers a new resource with the given unique name, arguments, and options.

func (*Hl7StoreIamMember) ElementType

func (*Hl7StoreIamMember) ElementType() reflect.Type

func (*Hl7StoreIamMember) ToHl7StoreIamMemberOutput

func (i *Hl7StoreIamMember) ToHl7StoreIamMemberOutput() Hl7StoreIamMemberOutput

func (*Hl7StoreIamMember) ToHl7StoreIamMemberOutputWithContext

func (i *Hl7StoreIamMember) ToHl7StoreIamMemberOutputWithContext(ctx context.Context) Hl7StoreIamMemberOutput

func (*Hl7StoreIamMember) ToHl7StoreIamMemberPtrOutput

func (i *Hl7StoreIamMember) ToHl7StoreIamMemberPtrOutput() Hl7StoreIamMemberPtrOutput

func (*Hl7StoreIamMember) ToHl7StoreIamMemberPtrOutputWithContext

func (i *Hl7StoreIamMember) ToHl7StoreIamMemberPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberPtrOutput

type Hl7StoreIamMemberArgs

type Hl7StoreIamMemberArgs struct {
	Condition Hl7StoreIamMemberConditionPtrInput
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringInput
	Member       pulumi.StringInput
	// The role that should be applied. Only one
	// `healthcare.Hl7StoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a Hl7StoreIamMember resource.

func (Hl7StoreIamMemberArgs) ElementType

func (Hl7StoreIamMemberArgs) ElementType() reflect.Type

type Hl7StoreIamMemberArray

type Hl7StoreIamMemberArray []Hl7StoreIamMemberInput

func (Hl7StoreIamMemberArray) ElementType

func (Hl7StoreIamMemberArray) ElementType() reflect.Type

func (Hl7StoreIamMemberArray) ToHl7StoreIamMemberArrayOutput

func (i Hl7StoreIamMemberArray) ToHl7StoreIamMemberArrayOutput() Hl7StoreIamMemberArrayOutput

func (Hl7StoreIamMemberArray) ToHl7StoreIamMemberArrayOutputWithContext

func (i Hl7StoreIamMemberArray) ToHl7StoreIamMemberArrayOutputWithContext(ctx context.Context) Hl7StoreIamMemberArrayOutput

type Hl7StoreIamMemberArrayInput

type Hl7StoreIamMemberArrayInput interface {
	pulumi.Input

	ToHl7StoreIamMemberArrayOutput() Hl7StoreIamMemberArrayOutput
	ToHl7StoreIamMemberArrayOutputWithContext(context.Context) Hl7StoreIamMemberArrayOutput
}

Hl7StoreIamMemberArrayInput is an input type that accepts Hl7StoreIamMemberArray and Hl7StoreIamMemberArrayOutput values. You can construct a concrete instance of `Hl7StoreIamMemberArrayInput` via:

Hl7StoreIamMemberArray{ Hl7StoreIamMemberArgs{...} }

type Hl7StoreIamMemberArrayOutput

type Hl7StoreIamMemberArrayOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamMemberArrayOutput) ElementType

func (Hl7StoreIamMemberArrayOutput) Index

func (Hl7StoreIamMemberArrayOutput) ToHl7StoreIamMemberArrayOutput

func (o Hl7StoreIamMemberArrayOutput) ToHl7StoreIamMemberArrayOutput() Hl7StoreIamMemberArrayOutput

func (Hl7StoreIamMemberArrayOutput) ToHl7StoreIamMemberArrayOutputWithContext

func (o Hl7StoreIamMemberArrayOutput) ToHl7StoreIamMemberArrayOutputWithContext(ctx context.Context) Hl7StoreIamMemberArrayOutput

type Hl7StoreIamMemberCondition

type Hl7StoreIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type Hl7StoreIamMemberConditionArgs

type Hl7StoreIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (Hl7StoreIamMemberConditionArgs) ElementType

func (Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionOutput

func (i Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionOutput() Hl7StoreIamMemberConditionOutput

func (Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionOutputWithContext

func (i Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionOutputWithContext(ctx context.Context) Hl7StoreIamMemberConditionOutput

func (Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionPtrOutput

func (i Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionPtrOutput() Hl7StoreIamMemberConditionPtrOutput

func (Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionPtrOutputWithContext

func (i Hl7StoreIamMemberConditionArgs) ToHl7StoreIamMemberConditionPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberConditionPtrOutput

type Hl7StoreIamMemberConditionInput

type Hl7StoreIamMemberConditionInput interface {
	pulumi.Input

	ToHl7StoreIamMemberConditionOutput() Hl7StoreIamMemberConditionOutput
	ToHl7StoreIamMemberConditionOutputWithContext(context.Context) Hl7StoreIamMemberConditionOutput
}

Hl7StoreIamMemberConditionInput is an input type that accepts Hl7StoreIamMemberConditionArgs and Hl7StoreIamMemberConditionOutput values. You can construct a concrete instance of `Hl7StoreIamMemberConditionInput` via:

Hl7StoreIamMemberConditionArgs{...}

type Hl7StoreIamMemberConditionOutput

type Hl7StoreIamMemberConditionOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamMemberConditionOutput) Description

func (Hl7StoreIamMemberConditionOutput) ElementType

func (Hl7StoreIamMemberConditionOutput) Expression

func (Hl7StoreIamMemberConditionOutput) Title

func (Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionOutput

func (o Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionOutput() Hl7StoreIamMemberConditionOutput

func (Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionOutputWithContext

func (o Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionOutputWithContext(ctx context.Context) Hl7StoreIamMemberConditionOutput

func (Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionPtrOutput

func (o Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionPtrOutput() Hl7StoreIamMemberConditionPtrOutput

func (Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionPtrOutputWithContext

func (o Hl7StoreIamMemberConditionOutput) ToHl7StoreIamMemberConditionPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberConditionPtrOutput

type Hl7StoreIamMemberConditionPtrInput

type Hl7StoreIamMemberConditionPtrInput interface {
	pulumi.Input

	ToHl7StoreIamMemberConditionPtrOutput() Hl7StoreIamMemberConditionPtrOutput
	ToHl7StoreIamMemberConditionPtrOutputWithContext(context.Context) Hl7StoreIamMemberConditionPtrOutput
}

Hl7StoreIamMemberConditionPtrInput is an input type that accepts Hl7StoreIamMemberConditionArgs, Hl7StoreIamMemberConditionPtr and Hl7StoreIamMemberConditionPtrOutput values. You can construct a concrete instance of `Hl7StoreIamMemberConditionPtrInput` via:

        Hl7StoreIamMemberConditionArgs{...}

or:

        nil

type Hl7StoreIamMemberConditionPtrOutput

type Hl7StoreIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamMemberConditionPtrOutput) Description

func (Hl7StoreIamMemberConditionPtrOutput) Elem

func (Hl7StoreIamMemberConditionPtrOutput) ElementType

func (Hl7StoreIamMemberConditionPtrOutput) Expression

func (Hl7StoreIamMemberConditionPtrOutput) Title

func (Hl7StoreIamMemberConditionPtrOutput) ToHl7StoreIamMemberConditionPtrOutput

func (o Hl7StoreIamMemberConditionPtrOutput) ToHl7StoreIamMemberConditionPtrOutput() Hl7StoreIamMemberConditionPtrOutput

func (Hl7StoreIamMemberConditionPtrOutput) ToHl7StoreIamMemberConditionPtrOutputWithContext

func (o Hl7StoreIamMemberConditionPtrOutput) ToHl7StoreIamMemberConditionPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberConditionPtrOutput

type Hl7StoreIamMemberInput

type Hl7StoreIamMemberInput interface {
	pulumi.Input

	ToHl7StoreIamMemberOutput() Hl7StoreIamMemberOutput
	ToHl7StoreIamMemberOutputWithContext(ctx context.Context) Hl7StoreIamMemberOutput
}

type Hl7StoreIamMemberMap

type Hl7StoreIamMemberMap map[string]Hl7StoreIamMemberInput

func (Hl7StoreIamMemberMap) ElementType

func (Hl7StoreIamMemberMap) ElementType() reflect.Type

func (Hl7StoreIamMemberMap) ToHl7StoreIamMemberMapOutput

func (i Hl7StoreIamMemberMap) ToHl7StoreIamMemberMapOutput() Hl7StoreIamMemberMapOutput

func (Hl7StoreIamMemberMap) ToHl7StoreIamMemberMapOutputWithContext

func (i Hl7StoreIamMemberMap) ToHl7StoreIamMemberMapOutputWithContext(ctx context.Context) Hl7StoreIamMemberMapOutput

type Hl7StoreIamMemberMapInput

type Hl7StoreIamMemberMapInput interface {
	pulumi.Input

	ToHl7StoreIamMemberMapOutput() Hl7StoreIamMemberMapOutput
	ToHl7StoreIamMemberMapOutputWithContext(context.Context) Hl7StoreIamMemberMapOutput
}

Hl7StoreIamMemberMapInput is an input type that accepts Hl7StoreIamMemberMap and Hl7StoreIamMemberMapOutput values. You can construct a concrete instance of `Hl7StoreIamMemberMapInput` via:

Hl7StoreIamMemberMap{ "key": Hl7StoreIamMemberArgs{...} }

type Hl7StoreIamMemberMapOutput

type Hl7StoreIamMemberMapOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamMemberMapOutput) ElementType

func (Hl7StoreIamMemberMapOutput) ElementType() reflect.Type

func (Hl7StoreIamMemberMapOutput) MapIndex

func (Hl7StoreIamMemberMapOutput) ToHl7StoreIamMemberMapOutput

func (o Hl7StoreIamMemberMapOutput) ToHl7StoreIamMemberMapOutput() Hl7StoreIamMemberMapOutput

func (Hl7StoreIamMemberMapOutput) ToHl7StoreIamMemberMapOutputWithContext

func (o Hl7StoreIamMemberMapOutput) ToHl7StoreIamMemberMapOutputWithContext(ctx context.Context) Hl7StoreIamMemberMapOutput

type Hl7StoreIamMemberOutput

type Hl7StoreIamMemberOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamMemberOutput) ElementType

func (Hl7StoreIamMemberOutput) ElementType() reflect.Type

func (Hl7StoreIamMemberOutput) ToHl7StoreIamMemberOutput

func (o Hl7StoreIamMemberOutput) ToHl7StoreIamMemberOutput() Hl7StoreIamMemberOutput

func (Hl7StoreIamMemberOutput) ToHl7StoreIamMemberOutputWithContext

func (o Hl7StoreIamMemberOutput) ToHl7StoreIamMemberOutputWithContext(ctx context.Context) Hl7StoreIamMemberOutput

func (Hl7StoreIamMemberOutput) ToHl7StoreIamMemberPtrOutput

func (o Hl7StoreIamMemberOutput) ToHl7StoreIamMemberPtrOutput() Hl7StoreIamMemberPtrOutput

func (Hl7StoreIamMemberOutput) ToHl7StoreIamMemberPtrOutputWithContext

func (o Hl7StoreIamMemberOutput) ToHl7StoreIamMemberPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberPtrOutput

type Hl7StoreIamMemberPtrInput

type Hl7StoreIamMemberPtrInput interface {
	pulumi.Input

	ToHl7StoreIamMemberPtrOutput() Hl7StoreIamMemberPtrOutput
	ToHl7StoreIamMemberPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberPtrOutput
}

type Hl7StoreIamMemberPtrOutput

type Hl7StoreIamMemberPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamMemberPtrOutput) Elem added in v5.21.0

func (Hl7StoreIamMemberPtrOutput) ElementType

func (Hl7StoreIamMemberPtrOutput) ElementType() reflect.Type

func (Hl7StoreIamMemberPtrOutput) ToHl7StoreIamMemberPtrOutput

func (o Hl7StoreIamMemberPtrOutput) ToHl7StoreIamMemberPtrOutput() Hl7StoreIamMemberPtrOutput

func (Hl7StoreIamMemberPtrOutput) ToHl7StoreIamMemberPtrOutputWithContext

func (o Hl7StoreIamMemberPtrOutput) ToHl7StoreIamMemberPtrOutputWithContext(ctx context.Context) Hl7StoreIamMemberPtrOutput

type Hl7StoreIamMemberState

type Hl7StoreIamMemberState struct {
	Condition Hl7StoreIamMemberConditionPtrInput
	// (Computed) The etag of the HL7v2 store's IAM policy.
	Etag pulumi.StringPtrInput
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringPtrInput
	Member       pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `healthcare.Hl7StoreIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (Hl7StoreIamMemberState) ElementType

func (Hl7StoreIamMemberState) ElementType() reflect.Type

type Hl7StoreIamPolicy

type Hl7StoreIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the HL7v2 store's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringOutput `pulumi:"hl7V2StoreId"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Three different resources help you manage your IAM policy for Healthcare HL7v2 store. Each of these resources serves a different use case:

* `healthcare.Hl7StoreIamPolicy`: Authoritative. Sets the IAM policy for the HL7v2 store and replaces any existing policy already attached. * `healthcare.Hl7StoreIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the HL7v2 store are preserved. * `healthcare.Hl7StoreIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the HL7v2 store are preserved.

> **Note:** `healthcare.Hl7StoreIamPolicy` **cannot** be used in conjunction with `healthcare.Hl7StoreIamBinding` and `healthcare.Hl7StoreIamMember` or they will fight over what your policy should be.

> **Note:** `healthcare.Hl7StoreIamBinding` resources **can be** used in conjunction with `healthcare.Hl7StoreIamMember` resources **only if** they do not grant privilege to the same role.

## google\_healthcare\_hl7\_v2\_store\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				organizations.GetIAMPolicyBinding{
					Role: "roles/editor",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = healthcare.NewHl7StoreIamPolicy(ctx, "hl7V2Store", &healthcare.Hl7StoreIamPolicyArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			PolicyData:   pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_hl7\_v2\_store\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewHl7StoreIamBinding(ctx, "hl7V2Store", &healthcare.Hl7StoreIamBindingArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
			Role: pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_healthcare\_hl7\_v2\_store\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v5/go/gcp/healthcare"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := healthcare.NewHl7StoreIamMember(ctx, "hl7V2Store", &healthcare.Hl7StoreIamMemberArgs{
			Hl7V2StoreId: pulumi.String("your-hl7-v2-store-id"),
			Member:       pulumi.String("user:jane@example.com"),
			Role:         pulumi.String("roles/editor"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

IAM member imports use space-delimited identifiers; the resource in question, the role, and the account.

This member resource can be imported using the `hl7_v2_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamPolicy:Hl7StoreIamPolicy hl7_v2_store_iam "your-project-id/location-name/dataset-name/hl7-v2-store-name roles/viewer user:foo@example.com"

```

IAM binding imports use space-delimited identifiers; the resource in question and the role.

This binding resource can be imported using the `hl7_v2_store_id` and role, e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamPolicy:Hl7StoreIamPolicy hl7_v2_store_iam "your-project-id/location-name/dataset-name/hl7-v2-store-name roles/viewer"

```

IAM policy imports use the identifier of the resource in question.

This policy resource can be imported using the `hl7_v2_store_id`, role, and account e.g.

```sh

$ pulumi import gcp:healthcare/hl7StoreIamPolicy:Hl7StoreIamPolicy hl7_v2_store_iam your-project-id/location-name/dataset-name/hl7-v2-store-name

```

func GetHl7StoreIamPolicy

func GetHl7StoreIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *Hl7StoreIamPolicyState, opts ...pulumi.ResourceOption) (*Hl7StoreIamPolicy, error)

GetHl7StoreIamPolicy gets an existing Hl7StoreIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHl7StoreIamPolicy

func NewHl7StoreIamPolicy(ctx *pulumi.Context,
	name string, args *Hl7StoreIamPolicyArgs, opts ...pulumi.ResourceOption) (*Hl7StoreIamPolicy, error)

NewHl7StoreIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*Hl7StoreIamPolicy) ElementType

func (*Hl7StoreIamPolicy) ElementType() reflect.Type

func (*Hl7StoreIamPolicy) ToHl7StoreIamPolicyOutput

func (i *Hl7StoreIamPolicy) ToHl7StoreIamPolicyOutput() Hl7StoreIamPolicyOutput

func (*Hl7StoreIamPolicy) ToHl7StoreIamPolicyOutputWithContext

func (i *Hl7StoreIamPolicy) ToHl7StoreIamPolicyOutputWithContext(ctx context.Context) Hl7StoreIamPolicyOutput

func (*Hl7StoreIamPolicy) ToHl7StoreIamPolicyPtrOutput

func (i *Hl7StoreIamPolicy) ToHl7StoreIamPolicyPtrOutput() Hl7StoreIamPolicyPtrOutput

func (*Hl7StoreIamPolicy) ToHl7StoreIamPolicyPtrOutputWithContext

func (i *Hl7StoreIamPolicy) ToHl7StoreIamPolicyPtrOutputWithContext(ctx context.Context) Hl7StoreIamPolicyPtrOutput

type Hl7StoreIamPolicyArgs

type Hl7StoreIamPolicyArgs struct {
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a Hl7StoreIamPolicy resource.

func (Hl7StoreIamPolicyArgs) ElementType

func (Hl7StoreIamPolicyArgs) ElementType() reflect.Type

type Hl7StoreIamPolicyArray

type Hl7StoreIamPolicyArray []Hl7StoreIamPolicyInput

func (Hl7StoreIamPolicyArray) ElementType

func (Hl7StoreIamPolicyArray) ElementType() reflect.Type

func (Hl7StoreIamPolicyArray) ToHl7StoreIamPolicyArrayOutput

func (i Hl7StoreIamPolicyArray) ToHl7StoreIamPolicyArrayOutput() Hl7StoreIamPolicyArrayOutput

func (Hl7StoreIamPolicyArray) ToHl7StoreIamPolicyArrayOutputWithContext

func (i Hl7StoreIamPolicyArray) ToHl7StoreIamPolicyArrayOutputWithContext(ctx context.Context) Hl7StoreIamPolicyArrayOutput

type Hl7StoreIamPolicyArrayInput

type Hl7StoreIamPolicyArrayInput interface {
	pulumi.Input

	ToHl7StoreIamPolicyArrayOutput() Hl7StoreIamPolicyArrayOutput
	ToHl7StoreIamPolicyArrayOutputWithContext(context.Context) Hl7StoreIamPolicyArrayOutput
}

Hl7StoreIamPolicyArrayInput is an input type that accepts Hl7StoreIamPolicyArray and Hl7StoreIamPolicyArrayOutput values. You can construct a concrete instance of `Hl7StoreIamPolicyArrayInput` via:

Hl7StoreIamPolicyArray{ Hl7StoreIamPolicyArgs{...} }

type Hl7StoreIamPolicyArrayOutput

type Hl7StoreIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamPolicyArrayOutput) ElementType

func (Hl7StoreIamPolicyArrayOutput) Index

func (Hl7StoreIamPolicyArrayOutput) ToHl7StoreIamPolicyArrayOutput

func (o Hl7StoreIamPolicyArrayOutput) ToHl7StoreIamPolicyArrayOutput() Hl7StoreIamPolicyArrayOutput

func (Hl7StoreIamPolicyArrayOutput) ToHl7StoreIamPolicyArrayOutputWithContext

func (o Hl7StoreIamPolicyArrayOutput) ToHl7StoreIamPolicyArrayOutputWithContext(ctx context.Context) Hl7StoreIamPolicyArrayOutput

type Hl7StoreIamPolicyInput

type Hl7StoreIamPolicyInput interface {
	pulumi.Input

	ToHl7StoreIamPolicyOutput() Hl7StoreIamPolicyOutput
	ToHl7StoreIamPolicyOutputWithContext(ctx context.Context) Hl7StoreIamPolicyOutput
}

type Hl7StoreIamPolicyMap

type Hl7StoreIamPolicyMap map[string]Hl7StoreIamPolicyInput

func (Hl7StoreIamPolicyMap) ElementType

func (Hl7StoreIamPolicyMap) ElementType() reflect.Type

func (Hl7StoreIamPolicyMap) ToHl7StoreIamPolicyMapOutput

func (i Hl7StoreIamPolicyMap) ToHl7StoreIamPolicyMapOutput() Hl7StoreIamPolicyMapOutput

func (Hl7StoreIamPolicyMap) ToHl7StoreIamPolicyMapOutputWithContext

func (i Hl7StoreIamPolicyMap) ToHl7StoreIamPolicyMapOutputWithContext(ctx context.Context) Hl7StoreIamPolicyMapOutput

type Hl7StoreIamPolicyMapInput

type Hl7StoreIamPolicyMapInput interface {
	pulumi.Input

	ToHl7StoreIamPolicyMapOutput() Hl7StoreIamPolicyMapOutput
	ToHl7StoreIamPolicyMapOutputWithContext(context.Context) Hl7StoreIamPolicyMapOutput
}

Hl7StoreIamPolicyMapInput is an input type that accepts Hl7StoreIamPolicyMap and Hl7StoreIamPolicyMapOutput values. You can construct a concrete instance of `Hl7StoreIamPolicyMapInput` via:

Hl7StoreIamPolicyMap{ "key": Hl7StoreIamPolicyArgs{...} }

type Hl7StoreIamPolicyMapOutput

type Hl7StoreIamPolicyMapOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamPolicyMapOutput) ElementType

func (Hl7StoreIamPolicyMapOutput) ElementType() reflect.Type

func (Hl7StoreIamPolicyMapOutput) MapIndex

func (Hl7StoreIamPolicyMapOutput) ToHl7StoreIamPolicyMapOutput

func (o Hl7StoreIamPolicyMapOutput) ToHl7StoreIamPolicyMapOutput() Hl7StoreIamPolicyMapOutput

func (Hl7StoreIamPolicyMapOutput) ToHl7StoreIamPolicyMapOutputWithContext

func (o Hl7StoreIamPolicyMapOutput) ToHl7StoreIamPolicyMapOutputWithContext(ctx context.Context) Hl7StoreIamPolicyMapOutput

type Hl7StoreIamPolicyOutput

type Hl7StoreIamPolicyOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamPolicyOutput) ElementType

func (Hl7StoreIamPolicyOutput) ElementType() reflect.Type

func (Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyOutput

func (o Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyOutput() Hl7StoreIamPolicyOutput

func (Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyOutputWithContext

func (o Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyOutputWithContext(ctx context.Context) Hl7StoreIamPolicyOutput

func (Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyPtrOutput

func (o Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyPtrOutput() Hl7StoreIamPolicyPtrOutput

func (Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyPtrOutputWithContext

func (o Hl7StoreIamPolicyOutput) ToHl7StoreIamPolicyPtrOutputWithContext(ctx context.Context) Hl7StoreIamPolicyPtrOutput

type Hl7StoreIamPolicyPtrInput

type Hl7StoreIamPolicyPtrInput interface {
	pulumi.Input

	ToHl7StoreIamPolicyPtrOutput() Hl7StoreIamPolicyPtrOutput
	ToHl7StoreIamPolicyPtrOutputWithContext(ctx context.Context) Hl7StoreIamPolicyPtrOutput
}

type Hl7StoreIamPolicyPtrOutput

type Hl7StoreIamPolicyPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreIamPolicyPtrOutput) Elem added in v5.21.0

func (Hl7StoreIamPolicyPtrOutput) ElementType

func (Hl7StoreIamPolicyPtrOutput) ElementType() reflect.Type

func (Hl7StoreIamPolicyPtrOutput) ToHl7StoreIamPolicyPtrOutput

func (o Hl7StoreIamPolicyPtrOutput) ToHl7StoreIamPolicyPtrOutput() Hl7StoreIamPolicyPtrOutput

func (Hl7StoreIamPolicyPtrOutput) ToHl7StoreIamPolicyPtrOutputWithContext

func (o Hl7StoreIamPolicyPtrOutput) ToHl7StoreIamPolicyPtrOutputWithContext(ctx context.Context) Hl7StoreIamPolicyPtrOutput

type Hl7StoreIamPolicyState

type Hl7StoreIamPolicyState struct {
	// (Computed) The etag of the HL7v2 store's IAM policy.
	Etag pulumi.StringPtrInput
	// The HL7v2 store ID, in the form
	// `{project_id}/{location_name}/{dataset_name}/{hl7_v2_store_name}` or
	// `{location_name}/{dataset_name}/{hl7_v2_store_name}`. In the second form, the provider's
	// project setting will be used as a fallback.
	Hl7V2StoreId pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
}

func (Hl7StoreIamPolicyState) ElementType

func (Hl7StoreIamPolicyState) ElementType() reflect.Type

type Hl7StoreInput

type Hl7StoreInput interface {
	pulumi.Input

	ToHl7StoreOutput() Hl7StoreOutput
	ToHl7StoreOutputWithContext(ctx context.Context) Hl7StoreOutput
}

type Hl7StoreMap

type Hl7StoreMap map[string]Hl7StoreInput

func (Hl7StoreMap) ElementType

func (Hl7StoreMap) ElementType() reflect.Type

func (Hl7StoreMap) ToHl7StoreMapOutput

func (i Hl7StoreMap) ToHl7StoreMapOutput() Hl7StoreMapOutput

func (Hl7StoreMap) ToHl7StoreMapOutputWithContext

func (i Hl7StoreMap) ToHl7StoreMapOutputWithContext(ctx context.Context) Hl7StoreMapOutput

type Hl7StoreMapInput

type Hl7StoreMapInput interface {
	pulumi.Input

	ToHl7StoreMapOutput() Hl7StoreMapOutput
	ToHl7StoreMapOutputWithContext(context.Context) Hl7StoreMapOutput
}

Hl7StoreMapInput is an input type that accepts Hl7StoreMap and Hl7StoreMapOutput values. You can construct a concrete instance of `Hl7StoreMapInput` via:

Hl7StoreMap{ "key": Hl7StoreArgs{...} }

type Hl7StoreMapOutput

type Hl7StoreMapOutput struct{ *pulumi.OutputState }

func (Hl7StoreMapOutput) ElementType

func (Hl7StoreMapOutput) ElementType() reflect.Type

func (Hl7StoreMapOutput) MapIndex

func (Hl7StoreMapOutput) ToHl7StoreMapOutput

func (o Hl7StoreMapOutput) ToHl7StoreMapOutput() Hl7StoreMapOutput

func (Hl7StoreMapOutput) ToHl7StoreMapOutputWithContext

func (o Hl7StoreMapOutput) ToHl7StoreMapOutputWithContext(ctx context.Context) Hl7StoreMapOutput

type Hl7StoreNotificationConfig

type Hl7StoreNotificationConfig struct {
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic string `pulumi:"pubsubTopic"`
}

type Hl7StoreNotificationConfigArgs

type Hl7StoreNotificationConfigArgs struct {
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic pulumi.StringInput `pulumi:"pubsubTopic"`
}

func (Hl7StoreNotificationConfigArgs) ElementType

func (Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigOutput

func (i Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigOutput() Hl7StoreNotificationConfigOutput

func (Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigOutputWithContext

func (i Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigOutput

func (Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigPtrOutput

func (i Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigPtrOutput() Hl7StoreNotificationConfigPtrOutput

func (Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigPtrOutputWithContext

func (i Hl7StoreNotificationConfigArgs) ToHl7StoreNotificationConfigPtrOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigPtrOutput

type Hl7StoreNotificationConfigInput

type Hl7StoreNotificationConfigInput interface {
	pulumi.Input

	ToHl7StoreNotificationConfigOutput() Hl7StoreNotificationConfigOutput
	ToHl7StoreNotificationConfigOutputWithContext(context.Context) Hl7StoreNotificationConfigOutput
}

Hl7StoreNotificationConfigInput is an input type that accepts Hl7StoreNotificationConfigArgs and Hl7StoreNotificationConfigOutput values. You can construct a concrete instance of `Hl7StoreNotificationConfigInput` via:

Hl7StoreNotificationConfigArgs{...}

type Hl7StoreNotificationConfigOutput

type Hl7StoreNotificationConfigOutput struct{ *pulumi.OutputState }

func (Hl7StoreNotificationConfigOutput) ElementType

func (Hl7StoreNotificationConfigOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigOutput

func (o Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigOutput() Hl7StoreNotificationConfigOutput

func (Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigOutputWithContext

func (o Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigOutput

func (Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigPtrOutput

func (o Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigPtrOutput() Hl7StoreNotificationConfigPtrOutput

func (Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigPtrOutputWithContext

func (o Hl7StoreNotificationConfigOutput) ToHl7StoreNotificationConfigPtrOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigPtrOutput

type Hl7StoreNotificationConfigPtrInput

type Hl7StoreNotificationConfigPtrInput interface {
	pulumi.Input

	ToHl7StoreNotificationConfigPtrOutput() Hl7StoreNotificationConfigPtrOutput
	ToHl7StoreNotificationConfigPtrOutputWithContext(context.Context) Hl7StoreNotificationConfigPtrOutput
}

Hl7StoreNotificationConfigPtrInput is an input type that accepts Hl7StoreNotificationConfigArgs, Hl7StoreNotificationConfigPtr and Hl7StoreNotificationConfigPtrOutput values. You can construct a concrete instance of `Hl7StoreNotificationConfigPtrInput` via:

        Hl7StoreNotificationConfigArgs{...}

or:

        nil

type Hl7StoreNotificationConfigPtrOutput

type Hl7StoreNotificationConfigPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreNotificationConfigPtrOutput) Elem

func (Hl7StoreNotificationConfigPtrOutput) ElementType

func (Hl7StoreNotificationConfigPtrOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (Hl7StoreNotificationConfigPtrOutput) ToHl7StoreNotificationConfigPtrOutput

func (o Hl7StoreNotificationConfigPtrOutput) ToHl7StoreNotificationConfigPtrOutput() Hl7StoreNotificationConfigPtrOutput

func (Hl7StoreNotificationConfigPtrOutput) ToHl7StoreNotificationConfigPtrOutputWithContext

func (o Hl7StoreNotificationConfigPtrOutput) ToHl7StoreNotificationConfigPtrOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigPtrOutput

type Hl7StoreNotificationConfigs

type Hl7StoreNotificationConfigs struct {
	// Restricts notifications sent for messages matching a filter. If this is empty, all messages
	// are matched. Syntax: https://cloud.google.com/appengine/docs/standard/python/search/query_strings
	// Fields/functions available for filtering are:
	// * messageType, from the MSH-9.1 field. For example, NOT messageType = "ADT".
	// * sendDate or sendDate, the YYYY-MM-DD date the message was sent in the dataset's timeZone, from the MSH-7 segment. For example, sendDate < "2017-01-02".
	// * sendTime, the timestamp when the message was sent, using the RFC3339 time format for comparisons, from the MSH-7 segment. For example, sendTime < "2017-01-02T00:00:00-05:00".
	// * sendFacility, the care center that the message came from, from the MSH-4 segment. For example, sendFacility = "ABC".
	// * PatientId(value, type), which matches if the message lists a patient having an ID of the given value and type in the PID-2, PID-3, or PID-4 segments. For example, PatientId("123456", "MRN").
	// * labels.x, a string value of the label with key x as set using the Message.labels map. For example, labels."priority"="high". The operator :* can be used to assert the existence of a label. For example, labels."priority":*.
	Filter *string `pulumi:"filter"`
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic string `pulumi:"pubsubTopic"`
}

type Hl7StoreNotificationConfigsArgs

type Hl7StoreNotificationConfigsArgs struct {
	// Restricts notifications sent for messages matching a filter. If this is empty, all messages
	// are matched. Syntax: https://cloud.google.com/appengine/docs/standard/python/search/query_strings
	// Fields/functions available for filtering are:
	// * messageType, from the MSH-9.1 field. For example, NOT messageType = "ADT".
	// * sendDate or sendDate, the YYYY-MM-DD date the message was sent in the dataset's timeZone, from the MSH-7 segment. For example, sendDate < "2017-01-02".
	// * sendTime, the timestamp when the message was sent, using the RFC3339 time format for comparisons, from the MSH-7 segment. For example, sendTime < "2017-01-02T00:00:00-05:00".
	// * sendFacility, the care center that the message came from, from the MSH-4 segment. For example, sendFacility = "ABC".
	// * PatientId(value, type), which matches if the message lists a patient having an ID of the given value and type in the PID-2, PID-3, or PID-4 segments. For example, PatientId("123456", "MRN").
	// * labels.x, a string value of the label with key x as set using the Message.labels map. For example, labels."priority"="high". The operator :* can be used to assert the existence of a label. For example, labels."priority":*.
	Filter pulumi.StringPtrInput `pulumi:"filter"`
	// The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client.
	// PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message.
	// It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message
	// was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a
	// project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given
	// Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.
	PubsubTopic pulumi.StringInput `pulumi:"pubsubTopic"`
}

func (Hl7StoreNotificationConfigsArgs) ElementType

func (Hl7StoreNotificationConfigsArgs) ToHl7StoreNotificationConfigsOutput

func (i Hl7StoreNotificationConfigsArgs) ToHl7StoreNotificationConfigsOutput() Hl7StoreNotificationConfigsOutput

func (Hl7StoreNotificationConfigsArgs) ToHl7StoreNotificationConfigsOutputWithContext

func (i Hl7StoreNotificationConfigsArgs) ToHl7StoreNotificationConfigsOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigsOutput

type Hl7StoreNotificationConfigsArray

type Hl7StoreNotificationConfigsArray []Hl7StoreNotificationConfigsInput

func (Hl7StoreNotificationConfigsArray) ElementType

func (Hl7StoreNotificationConfigsArray) ToHl7StoreNotificationConfigsArrayOutput

func (i Hl7StoreNotificationConfigsArray) ToHl7StoreNotificationConfigsArrayOutput() Hl7StoreNotificationConfigsArrayOutput

func (Hl7StoreNotificationConfigsArray) ToHl7StoreNotificationConfigsArrayOutputWithContext

func (i Hl7StoreNotificationConfigsArray) ToHl7StoreNotificationConfigsArrayOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigsArrayOutput

type Hl7StoreNotificationConfigsArrayInput

type Hl7StoreNotificationConfigsArrayInput interface {
	pulumi.Input

	ToHl7StoreNotificationConfigsArrayOutput() Hl7StoreNotificationConfigsArrayOutput
	ToHl7StoreNotificationConfigsArrayOutputWithContext(context.Context) Hl7StoreNotificationConfigsArrayOutput
}

Hl7StoreNotificationConfigsArrayInput is an input type that accepts Hl7StoreNotificationConfigsArray and Hl7StoreNotificationConfigsArrayOutput values. You can construct a concrete instance of `Hl7StoreNotificationConfigsArrayInput` via:

Hl7StoreNotificationConfigsArray{ Hl7StoreNotificationConfigsArgs{...} }

type Hl7StoreNotificationConfigsArrayOutput

type Hl7StoreNotificationConfigsArrayOutput struct{ *pulumi.OutputState }

func (Hl7StoreNotificationConfigsArrayOutput) ElementType

func (Hl7StoreNotificationConfigsArrayOutput) Index

func (Hl7StoreNotificationConfigsArrayOutput) ToHl7StoreNotificationConfigsArrayOutput

func (o Hl7StoreNotificationConfigsArrayOutput) ToHl7StoreNotificationConfigsArrayOutput() Hl7StoreNotificationConfigsArrayOutput

func (Hl7StoreNotificationConfigsArrayOutput) ToHl7StoreNotificationConfigsArrayOutputWithContext

func (o Hl7StoreNotificationConfigsArrayOutput) ToHl7StoreNotificationConfigsArrayOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigsArrayOutput

type Hl7StoreNotificationConfigsInput

type Hl7StoreNotificationConfigsInput interface {
	pulumi.Input

	ToHl7StoreNotificationConfigsOutput() Hl7StoreNotificationConfigsOutput
	ToHl7StoreNotificationConfigsOutputWithContext(context.Context) Hl7StoreNotificationConfigsOutput
}

Hl7StoreNotificationConfigsInput is an input type that accepts Hl7StoreNotificationConfigsArgs and Hl7StoreNotificationConfigsOutput values. You can construct a concrete instance of `Hl7StoreNotificationConfigsInput` via:

Hl7StoreNotificationConfigsArgs{...}

type Hl7StoreNotificationConfigsOutput

type Hl7StoreNotificationConfigsOutput struct{ *pulumi.OutputState }

func (Hl7StoreNotificationConfigsOutput) ElementType

func (Hl7StoreNotificationConfigsOutput) Filter

Restricts notifications sent for messages matching a filter. If this is empty, all messages are matched. Syntax: https://cloud.google.com/appengine/docs/standard/python/search/query_strings Fields/functions available for filtering are: * messageType, from the MSH-9.1 field. For example, NOT messageType = "ADT". * sendDate or sendDate, the YYYY-MM-DD date the message was sent in the dataset's timeZone, from the MSH-7 segment. For example, sendDate < "2017-01-02". * sendTime, the timestamp when the message was sent, using the RFC3339 time format for comparisons, from the MSH-7 segment. For example, sendTime < "2017-01-02T00:00:00-05:00". * sendFacility, the care center that the message came from, from the MSH-4 segment. For example, sendFacility = "ABC". * PatientId(value, type), which matches if the message lists a patient having an ID of the given value and type in the PID-2, PID-3, or PID-4 segments. For example, PatientId("123456", "MRN"). * labels.x, a string value of the label with key x as set using the Message.labels map. For example, labels."priority"="high". The operator :* can be used to assert the existence of a label. For example, labels."priority":*.

func (Hl7StoreNotificationConfigsOutput) PubsubTopic

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

func (Hl7StoreNotificationConfigsOutput) ToHl7StoreNotificationConfigsOutput

func (o Hl7StoreNotificationConfigsOutput) ToHl7StoreNotificationConfigsOutput() Hl7StoreNotificationConfigsOutput

func (Hl7StoreNotificationConfigsOutput) ToHl7StoreNotificationConfigsOutputWithContext

func (o Hl7StoreNotificationConfigsOutput) ToHl7StoreNotificationConfigsOutputWithContext(ctx context.Context) Hl7StoreNotificationConfigsOutput

type Hl7StoreOutput

type Hl7StoreOutput struct{ *pulumi.OutputState }

func (Hl7StoreOutput) ElementType

func (Hl7StoreOutput) ElementType() reflect.Type

func (Hl7StoreOutput) ToHl7StoreOutput

func (o Hl7StoreOutput) ToHl7StoreOutput() Hl7StoreOutput

func (Hl7StoreOutput) ToHl7StoreOutputWithContext

func (o Hl7StoreOutput) ToHl7StoreOutputWithContext(ctx context.Context) Hl7StoreOutput

func (Hl7StoreOutput) ToHl7StorePtrOutput

func (o Hl7StoreOutput) ToHl7StorePtrOutput() Hl7StorePtrOutput

func (Hl7StoreOutput) ToHl7StorePtrOutputWithContext

func (o Hl7StoreOutput) ToHl7StorePtrOutputWithContext(ctx context.Context) Hl7StorePtrOutput

type Hl7StoreParserConfig

type Hl7StoreParserConfig struct {
	// Determines whether messages with no header are allowed.
	AllowNullHeader *bool `pulumi:"allowNullHeader"`
	// JSON encoded string for schemas used to parse messages in this
	// store if schematized parsing is desired.
	Schema *string `pulumi:"schema"`
	// Byte(s) to be used as the segment terminator. If this is unset, '\r' will be used as segment terminator.
	// A base64-encoded string.
	SegmentTerminator *string `pulumi:"segmentTerminator"`
	// The version of the unschematized parser to be used when a custom `schema` is not set.
	// Default value is `V1`.
	// Possible values are `V1` and `V2`.
	Version *string `pulumi:"version"`
}

type Hl7StoreParserConfigArgs

type Hl7StoreParserConfigArgs struct {
	// Determines whether messages with no header are allowed.
	AllowNullHeader pulumi.BoolPtrInput `pulumi:"allowNullHeader"`
	// JSON encoded string for schemas used to parse messages in this
	// store if schematized parsing is desired.
	Schema pulumi.StringPtrInput `pulumi:"schema"`
	// Byte(s) to be used as the segment terminator. If this is unset, '\r' will be used as segment terminator.
	// A base64-encoded string.
	SegmentTerminator pulumi.StringPtrInput `pulumi:"segmentTerminator"`
	// The version of the unschematized parser to be used when a custom `schema` is not set.
	// Default value is `V1`.
	// Possible values are `V1` and `V2`.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

func (Hl7StoreParserConfigArgs) ElementType

func (Hl7StoreParserConfigArgs) ElementType() reflect.Type

func (Hl7StoreParserConfigArgs) ToHl7StoreParserConfigOutput

func (i Hl7StoreParserConfigArgs) ToHl7StoreParserConfigOutput() Hl7StoreParserConfigOutput

func (Hl7StoreParserConfigArgs) ToHl7StoreParserConfigOutputWithContext

func (i Hl7StoreParserConfigArgs) ToHl7StoreParserConfigOutputWithContext(ctx context.Context) Hl7StoreParserConfigOutput

func (Hl7StoreParserConfigArgs) ToHl7StoreParserConfigPtrOutput

func (i Hl7StoreParserConfigArgs) ToHl7StoreParserConfigPtrOutput() Hl7StoreParserConfigPtrOutput

func (Hl7StoreParserConfigArgs) ToHl7StoreParserConfigPtrOutputWithContext

func (i Hl7StoreParserConfigArgs) ToHl7StoreParserConfigPtrOutputWithContext(ctx context.Context) Hl7StoreParserConfigPtrOutput

type Hl7StoreParserConfigInput

type Hl7StoreParserConfigInput interface {
	pulumi.Input

	ToHl7StoreParserConfigOutput() Hl7StoreParserConfigOutput
	ToHl7StoreParserConfigOutputWithContext(context.Context) Hl7StoreParserConfigOutput
}

Hl7StoreParserConfigInput is an input type that accepts Hl7StoreParserConfigArgs and Hl7StoreParserConfigOutput values. You can construct a concrete instance of `Hl7StoreParserConfigInput` via:

Hl7StoreParserConfigArgs{...}

type Hl7StoreParserConfigOutput

type Hl7StoreParserConfigOutput struct{ *pulumi.OutputState }

func (Hl7StoreParserConfigOutput) AllowNullHeader

func (o Hl7StoreParserConfigOutput) AllowNullHeader() pulumi.BoolPtrOutput

Determines whether messages with no header are allowed.

func (Hl7StoreParserConfigOutput) ElementType

func (Hl7StoreParserConfigOutput) ElementType() reflect.Type

func (Hl7StoreParserConfigOutput) Schema

JSON encoded string for schemas used to parse messages in this store if schematized parsing is desired.

func (Hl7StoreParserConfigOutput) SegmentTerminator

func (o Hl7StoreParserConfigOutput) SegmentTerminator() pulumi.StringPtrOutput

Byte(s) to be used as the segment terminator. If this is unset, '\r' will be used as segment terminator. A base64-encoded string.

func (Hl7StoreParserConfigOutput) ToHl7StoreParserConfigOutput

func (o Hl7StoreParserConfigOutput) ToHl7StoreParserConfigOutput() Hl7StoreParserConfigOutput

func (Hl7StoreParserConfigOutput) ToHl7StoreParserConfigOutputWithContext

func (o Hl7StoreParserConfigOutput) ToHl7StoreParserConfigOutputWithContext(ctx context.Context) Hl7StoreParserConfigOutput

func (Hl7StoreParserConfigOutput) ToHl7StoreParserConfigPtrOutput

func (o Hl7StoreParserConfigOutput) ToHl7StoreParserConfigPtrOutput() Hl7StoreParserConfigPtrOutput

func (Hl7StoreParserConfigOutput) ToHl7StoreParserConfigPtrOutputWithContext

func (o Hl7StoreParserConfigOutput) ToHl7StoreParserConfigPtrOutputWithContext(ctx context.Context) Hl7StoreParserConfigPtrOutput

func (Hl7StoreParserConfigOutput) Version

The version of the unschematized parser to be used when a custom `schema` is not set. Default value is `V1`. Possible values are `V1` and `V2`.

type Hl7StoreParserConfigPtrInput

type Hl7StoreParserConfigPtrInput interface {
	pulumi.Input

	ToHl7StoreParserConfigPtrOutput() Hl7StoreParserConfigPtrOutput
	ToHl7StoreParserConfigPtrOutputWithContext(context.Context) Hl7StoreParserConfigPtrOutput
}

Hl7StoreParserConfigPtrInput is an input type that accepts Hl7StoreParserConfigArgs, Hl7StoreParserConfigPtr and Hl7StoreParserConfigPtrOutput values. You can construct a concrete instance of `Hl7StoreParserConfigPtrInput` via:

        Hl7StoreParserConfigArgs{...}

or:

        nil

type Hl7StoreParserConfigPtrOutput

type Hl7StoreParserConfigPtrOutput struct{ *pulumi.OutputState }

func (Hl7StoreParserConfigPtrOutput) AllowNullHeader

Determines whether messages with no header are allowed.

func (Hl7StoreParserConfigPtrOutput) Elem

func (Hl7StoreParserConfigPtrOutput) ElementType

func (Hl7StoreParserConfigPtrOutput) Schema

JSON encoded string for schemas used to parse messages in this store if schematized parsing is desired.

func (Hl7StoreParserConfigPtrOutput) SegmentTerminator

Byte(s) to be used as the segment terminator. If this is unset, '\r' will be used as segment terminator. A base64-encoded string.

func (Hl7StoreParserConfigPtrOutput) ToHl7StoreParserConfigPtrOutput

func (o Hl7StoreParserConfigPtrOutput) ToHl7StoreParserConfigPtrOutput() Hl7StoreParserConfigPtrOutput

func (Hl7StoreParserConfigPtrOutput) ToHl7StoreParserConfigPtrOutputWithContext

func (o Hl7StoreParserConfigPtrOutput) ToHl7StoreParserConfigPtrOutputWithContext(ctx context.Context) Hl7StoreParserConfigPtrOutput

func (Hl7StoreParserConfigPtrOutput) Version

The version of the unschematized parser to be used when a custom `schema` is not set. Default value is `V1`. Possible values are `V1` and `V2`.

type Hl7StorePtrInput

type Hl7StorePtrInput interface {
	pulumi.Input

	ToHl7StorePtrOutput() Hl7StorePtrOutput
	ToHl7StorePtrOutputWithContext(ctx context.Context) Hl7StorePtrOutput
}

type Hl7StorePtrOutput

type Hl7StorePtrOutput struct{ *pulumi.OutputState }

func (Hl7StorePtrOutput) Elem added in v5.21.0

func (Hl7StorePtrOutput) ElementType

func (Hl7StorePtrOutput) ElementType() reflect.Type

func (Hl7StorePtrOutput) ToHl7StorePtrOutput

func (o Hl7StorePtrOutput) ToHl7StorePtrOutput() Hl7StorePtrOutput

func (Hl7StorePtrOutput) ToHl7StorePtrOutputWithContext

func (o Hl7StorePtrOutput) ToHl7StorePtrOutputWithContext(ctx context.Context) Hl7StorePtrOutput

type Hl7StoreState

type Hl7StoreState struct {
	// Identifies the dataset addressed by this request. Must be in the format
	// 'projects/{project}/locations/{location}/datasets/{dataset}'
	Dataset pulumi.StringPtrInput
	// User-supplied key-value pairs used to organize HL7v2 stores.
	// Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must
	// conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
	// Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128
	// bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
	// No more than 64 labels can be associated with a given store.
	// An object containing a list of "key": value pairs.
	// Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// The resource name for the Hl7V2Store.
	// ** Changing this property may recreate the Hl7v2 store (removing all data) **
	Name pulumi.StringPtrInput
	// -
	// (Optional, Deprecated)
	// A nested object resource
	// Structure is documented below.
	//
	// Deprecated: This field has been replaced by notificationConfigs
	NotificationConfig Hl7StoreNotificationConfigPtrInput
	// A list of notification configs. Each configuration uses a filter to determine whether to publish a
	// message (both Ingest & Create) on the corresponding notification destination. Only the message name
	// is sent as part of the notification. Supplied by the client.
	// Structure is documented below.
	NotificationConfigs Hl7StoreNotificationConfigsArrayInput
	// A nested object resource
	// Structure is documented below.
	ParserConfig Hl7StoreParserConfigPtrInput
	// The fully qualified name of this dataset
	SelfLink pulumi.StringPtrInput
}

func (Hl7StoreState) ElementType

func (Hl7StoreState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL