import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface FunctionResourceConfig extends cdktf.TerraformMetaArguments { /** * The maximum number of requests processed by a function instance at the same time. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#concurrency FunctionResource#concurrency} */ readonly concurrency?: number; /** * The resource description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#description FunctionResource#description} */ readonly description?: string; /** * Entrypoint for Yandex Cloud Function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#entrypoint FunctionResource#entrypoint} */ readonly entrypoint: string; /** * A set of key/value environment variables for Yandex Cloud Function. Each key must begin with a letter (A-Z, a-z). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#environment FunctionResource#environment} */ readonly environment?: { [key: string]: string; }; /** * Execution timeout in seconds for Yandex Cloud Function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#execution_timeout FunctionResource#execution_timeout} */ readonly executionTimeout?: string; /** * The folder identifier that resource belongs to. If it is not provided, the default provider `folder-id` is used. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#folder_id FunctionResource#folder_id} */ readonly folderId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#id FunctionResource#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * A set of key/value label pairs which assigned to resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#labels FunctionResource#labels} */ readonly labels?: { [key: string]: string; }; /** * Memory in megabytes (**aligned to 128MB**) for Yandex Cloud Function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#memory FunctionResource#memory} */ readonly memory: number; /** * The resource name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#name FunctionResource#name} */ readonly name: string; /** * Runtime for Yandex Cloud Function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#runtime FunctionResource#runtime} */ readonly runtime: string; /** * [Service account](https://yandex.cloud/docs/iam/concepts/users/service-accounts) which linked to the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#service_account_id FunctionResource#service_account_id} */ readonly serviceAccountId?: string; /** * Tags for Yandex Cloud Function. Tag `$latest` isn't returned. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#tags FunctionResource#tags} */ readonly tags?: string[]; /** * Tmpfs size for Yandex Cloud Function. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#tmpfs_size FunctionResource#tmpfs_size} */ readonly tmpfsSize?: number; /** * User-defined string for current function version. User must change this string any times when function changed. Function will be updated when hash is changed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#user_hash FunctionResource#user_hash} */ readonly userHash: string; /** * async_invocation block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#async_invocation FunctionResource#async_invocation} */ readonly asyncInvocation?: FunctionResourceAsyncInvocation; /** * connectivity block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#connectivity FunctionResource#connectivity} */ readonly connectivity?: FunctionResourceConnectivity; /** * content block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#content FunctionResource#content} */ readonly content?: FunctionResourceContent; /** * log_options block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#log_options FunctionResource#log_options} */ readonly logOptions?: FunctionResourceLogOptions; /** * metadata_options block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#metadata_options FunctionResource#metadata_options} */ readonly metadataOptions?: FunctionResourceMetadataOptions; /** * mounts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#mounts FunctionResource#mounts} */ readonly mounts?: FunctionResourceMounts[] | cdktf.IResolvable; /** * package block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#package FunctionResource#package} */ readonly package?: FunctionResourcePackage; /** * secrets block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#secrets FunctionResource#secrets} */ readonly secrets?: FunctionResourceSecrets[] | cdktf.IResolvable; /** * storage_mounts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#storage_mounts FunctionResource#storage_mounts} */ readonly storageMounts?: FunctionResourceStorageMounts[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#timeouts FunctionResource#timeouts} */ readonly timeouts?: FunctionResourceTimeouts; } export interface FunctionResourceAsyncInvocationYmqFailureTarget { /** * YMQ ARN. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#arn FunctionResource#arn} */ readonly arn: string; /** * Service account used for writing result to queue. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#service_account_id FunctionResource#service_account_id} */ readonly serviceAccountId: string; } export declare function functionResourceAsyncInvocationYmqFailureTargetToTerraform(struct?: FunctionResourceAsyncInvocationYmqFailureTargetOutputReference | FunctionResourceAsyncInvocationYmqFailureTarget): any; export declare function functionResourceAsyncInvocationYmqFailureTargetToHclTerraform(struct?: FunctionResourceAsyncInvocationYmqFailureTargetOutputReference | FunctionResourceAsyncInvocationYmqFailureTarget): any; export declare class FunctionResourceAsyncInvocationYmqFailureTargetOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceAsyncInvocationYmqFailureTarget | undefined; set internalValue(value: FunctionResourceAsyncInvocationYmqFailureTarget | undefined); private _arn?; get arn(): string; set arn(value: string); get arnInput(): string; private _serviceAccountId?; get serviceAccountId(): string; set serviceAccountId(value: string); get serviceAccountIdInput(): string; } export interface FunctionResourceAsyncInvocationYmqSuccessTarget { /** * YMQ ARN. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#arn FunctionResource#arn} */ readonly arn: string; /** * Service account used for writing result to queue. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#service_account_id FunctionResource#service_account_id} */ readonly serviceAccountId: string; } export declare function functionResourceAsyncInvocationYmqSuccessTargetToTerraform(struct?: FunctionResourceAsyncInvocationYmqSuccessTargetOutputReference | FunctionResourceAsyncInvocationYmqSuccessTarget): any; export declare function functionResourceAsyncInvocationYmqSuccessTargetToHclTerraform(struct?: FunctionResourceAsyncInvocationYmqSuccessTargetOutputReference | FunctionResourceAsyncInvocationYmqSuccessTarget): any; export declare class FunctionResourceAsyncInvocationYmqSuccessTargetOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceAsyncInvocationYmqSuccessTarget | undefined; set internalValue(value: FunctionResourceAsyncInvocationYmqSuccessTarget | undefined); private _arn?; get arn(): string; set arn(value: string); get arnInput(): string; private _serviceAccountId?; get serviceAccountId(): string; set serviceAccountId(value: string); get serviceAccountIdInput(): string; } export interface FunctionResourceAsyncInvocation { /** * Maximum number of retries for async invocation. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#retries_count FunctionResource#retries_count} */ readonly retriesCount?: number; /** * Service account used for async invocation. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#service_account_id FunctionResource#service_account_id} */ readonly serviceAccountId?: string; /** * ymq_failure_target block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#ymq_failure_target FunctionResource#ymq_failure_target} */ readonly ymqFailureTarget?: FunctionResourceAsyncInvocationYmqFailureTarget; /** * ymq_success_target block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#ymq_success_target FunctionResource#ymq_success_target} */ readonly ymqSuccessTarget?: FunctionResourceAsyncInvocationYmqSuccessTarget; } export declare function functionResourceAsyncInvocationToTerraform(struct?: FunctionResourceAsyncInvocationOutputReference | FunctionResourceAsyncInvocation): any; export declare function functionResourceAsyncInvocationToHclTerraform(struct?: FunctionResourceAsyncInvocationOutputReference | FunctionResourceAsyncInvocation): any; export declare class FunctionResourceAsyncInvocationOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceAsyncInvocation | undefined; set internalValue(value: FunctionResourceAsyncInvocation | undefined); private _retriesCount?; get retriesCount(): number; set retriesCount(value: number); resetRetriesCount(): void; get retriesCountInput(): number; private _serviceAccountId?; get serviceAccountId(): string; set serviceAccountId(value: string); resetServiceAccountId(): void; get serviceAccountIdInput(): string; private _ymqFailureTarget; get ymqFailureTarget(): FunctionResourceAsyncInvocationYmqFailureTargetOutputReference; putYmqFailureTarget(value: FunctionResourceAsyncInvocationYmqFailureTarget): void; resetYmqFailureTarget(): void; get ymqFailureTargetInput(): FunctionResourceAsyncInvocationYmqFailureTarget; private _ymqSuccessTarget; get ymqSuccessTarget(): FunctionResourceAsyncInvocationYmqSuccessTargetOutputReference; putYmqSuccessTarget(value: FunctionResourceAsyncInvocationYmqSuccessTarget): void; resetYmqSuccessTarget(): void; get ymqSuccessTargetInput(): FunctionResourceAsyncInvocationYmqSuccessTarget; } export interface FunctionResourceConnectivity { /** * Network the version will have access to. It's essential to specify network with subnets in all availability zones. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#network_id FunctionResource#network_id} */ readonly networkId: string; } export declare function functionResourceConnectivityToTerraform(struct?: FunctionResourceConnectivityOutputReference | FunctionResourceConnectivity): any; export declare function functionResourceConnectivityToHclTerraform(struct?: FunctionResourceConnectivityOutputReference | FunctionResourceConnectivity): any; export declare class FunctionResourceConnectivityOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceConnectivity | undefined; set internalValue(value: FunctionResourceConnectivity | undefined); private _networkId?; get networkId(): string; set networkId(value: string); get networkIdInput(): string; } export interface FunctionResourceContent { /** * Filename to zip archive for the version. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#zip_filename FunctionResource#zip_filename} */ readonly zipFilename: string; } export declare function functionResourceContentToTerraform(struct?: FunctionResourceContentOutputReference | FunctionResourceContent): any; export declare function functionResourceContentToHclTerraform(struct?: FunctionResourceContentOutputReference | FunctionResourceContent): any; export declare class FunctionResourceContentOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceContent | undefined; set internalValue(value: FunctionResourceContent | undefined); private _zipFilename?; get zipFilename(): string; set zipFilename(value: string); get zipFilenameInput(): string; } export interface FunctionResourceLogOptions { /** * Is logging from function disabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#disabled FunctionResource#disabled} */ readonly disabled?: boolean | cdktf.IResolvable; /** * Log entries are written to default log group for specified folder. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#folder_id FunctionResource#folder_id} */ readonly folderId?: string; /** * Log entries are written to specified log group. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#log_group_id FunctionResource#log_group_id} */ readonly logGroupId?: string; /** * Minimum log entry level. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#min_level FunctionResource#min_level} */ readonly minLevel?: string; } export declare function functionResourceLogOptionsToTerraform(struct?: FunctionResourceLogOptionsOutputReference | FunctionResourceLogOptions): any; export declare function functionResourceLogOptionsToHclTerraform(struct?: FunctionResourceLogOptionsOutputReference | FunctionResourceLogOptions): any; export declare class FunctionResourceLogOptionsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceLogOptions | undefined; set internalValue(value: FunctionResourceLogOptions | undefined); private _disabled?; get disabled(): boolean | cdktf.IResolvable; set disabled(value: boolean | cdktf.IResolvable); resetDisabled(): void; get disabledInput(): any; private _folderId?; get folderId(): string; set folderId(value: string); resetFolderId(): void; get folderIdInput(): string; private _logGroupId?; get logGroupId(): string; set logGroupId(value: string); resetLogGroupId(): void; get logGroupIdInput(): string; private _minLevel?; get minLevel(): string; set minLevel(value: string); resetMinLevel(): void; get minLevelInput(): string; } export interface FunctionResourceMetadataOptions { /** * Enables access to AWS flavored metadata (IMDSv1). Values: `0` - default, `1` - enabled, `2` - disabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#aws_v1_http_endpoint FunctionResource#aws_v1_http_endpoint} */ readonly awsV1HttpEndpoint?: number; /** * Enables access to GCE flavored metadata. Values: `0`- default, `1` - enabled, `2` - disabled. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#gce_http_endpoint FunctionResource#gce_http_endpoint} */ readonly gceHttpEndpoint?: number; } export declare function functionResourceMetadataOptionsToTerraform(struct?: FunctionResourceMetadataOptionsOutputReference | FunctionResourceMetadataOptions): any; export declare function functionResourceMetadataOptionsToHclTerraform(struct?: FunctionResourceMetadataOptionsOutputReference | FunctionResourceMetadataOptions): any; export declare class FunctionResourceMetadataOptionsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceMetadataOptions | undefined; set internalValue(value: FunctionResourceMetadataOptions | undefined); private _awsV1HttpEndpoint?; get awsV1HttpEndpoint(): number; set awsV1HttpEndpoint(value: number); resetAwsV1HttpEndpoint(): void; get awsV1HttpEndpointInput(): number; private _gceHttpEndpoint?; get gceHttpEndpoint(): number; set gceHttpEndpoint(value: number); resetGceHttpEndpoint(): void; get gceHttpEndpointInput(): number; } export interface FunctionResourceMountsEphemeralDisk { /** * Optional block size of the ephemeral disk in KB. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#block_size_kb FunctionResource#block_size_kb} */ readonly blockSizeKb?: number; /** * Size of the ephemeral disk in GB. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#size_gb FunctionResource#size_gb} */ readonly sizeGb: number; } export declare function functionResourceMountsEphemeralDiskToTerraform(struct?: FunctionResourceMountsEphemeralDiskOutputReference | FunctionResourceMountsEphemeralDisk): any; export declare function functionResourceMountsEphemeralDiskToHclTerraform(struct?: FunctionResourceMountsEphemeralDiskOutputReference | FunctionResourceMountsEphemeralDisk): any; export declare class FunctionResourceMountsEphemeralDiskOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceMountsEphemeralDisk | undefined; set internalValue(value: FunctionResourceMountsEphemeralDisk | undefined); private _blockSizeKb?; get blockSizeKb(): number; set blockSizeKb(value: number); resetBlockSizeKb(): void; get blockSizeKbInput(): number; private _sizeGb?; get sizeGb(): number; set sizeGb(value: number); get sizeGbInput(): number; } export interface FunctionResourceMountsObjectStorage { /** * Name of the mounting bucket. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#bucket FunctionResource#bucket} */ readonly bucket: string; /** * Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#prefix FunctionResource#prefix} */ readonly prefix?: string; } export declare function functionResourceMountsObjectStorageToTerraform(struct?: FunctionResourceMountsObjectStorageOutputReference | FunctionResourceMountsObjectStorage): any; export declare function functionResourceMountsObjectStorageToHclTerraform(struct?: FunctionResourceMountsObjectStorageOutputReference | FunctionResourceMountsObjectStorage): any; export declare class FunctionResourceMountsObjectStorageOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceMountsObjectStorage | undefined; set internalValue(value: FunctionResourceMountsObjectStorage | undefined); private _bucket?; get bucket(): string; set bucket(value: string); get bucketInput(): string; private _prefix?; get prefix(): string; set prefix(value: string); resetPrefix(): void; get prefixInput(): string; } export interface FunctionResourceMounts { /** * Mount’s accessibility mode. Valid values are `ro` and `rw`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#mode FunctionResource#mode} */ readonly mode?: string; /** * Name of the mount point. The directory where the target is mounted will be accessible at the `/function/storage/` path. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#name FunctionResource#name} */ readonly name: string; /** * ephemeral_disk block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#ephemeral_disk FunctionResource#ephemeral_disk} */ readonly ephemeralDisk?: FunctionResourceMountsEphemeralDisk; /** * object_storage block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#object_storage FunctionResource#object_storage} */ readonly objectStorage?: FunctionResourceMountsObjectStorage; } export declare function functionResourceMountsToTerraform(struct?: FunctionResourceMounts | cdktf.IResolvable): any; export declare function functionResourceMountsToHclTerraform(struct?: FunctionResourceMounts | cdktf.IResolvable): any; export declare class FunctionResourceMountsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): FunctionResourceMounts | cdktf.IResolvable | undefined; set internalValue(value: FunctionResourceMounts | cdktf.IResolvable | undefined); private _mode?; get mode(): string; set mode(value: string); resetMode(): void; get modeInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _ephemeralDisk; get ephemeralDisk(): FunctionResourceMountsEphemeralDiskOutputReference; putEphemeralDisk(value: FunctionResourceMountsEphemeralDisk): void; resetEphemeralDisk(): void; get ephemeralDiskInput(): FunctionResourceMountsEphemeralDisk; private _objectStorage; get objectStorage(): FunctionResourceMountsObjectStorageOutputReference; putObjectStorage(value: FunctionResourceMountsObjectStorage): void; resetObjectStorage(): void; get objectStorageInput(): FunctionResourceMountsObjectStorage; } export declare class FunctionResourceMountsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: FunctionResourceMounts[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): FunctionResourceMountsOutputReference; } export interface FunctionResourcePackage { /** * Name of the bucket that stores the code for the version. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#bucket_name FunctionResource#bucket_name} */ readonly bucketName: string; /** * Name of the object in the bucket that stores the code for the version. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#object_name FunctionResource#object_name} */ readonly objectName: string; /** * SHA256 hash of the version deployment package. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#sha_256 FunctionResource#sha_256} */ readonly sha256?: string; } export declare function functionResourcePackageToTerraform(struct?: FunctionResourcePackageOutputReference | FunctionResourcePackage): any; export declare function functionResourcePackageToHclTerraform(struct?: FunctionResourcePackageOutputReference | FunctionResourcePackage): any; export declare class FunctionResourcePackageOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourcePackage | undefined; set internalValue(value: FunctionResourcePackage | undefined); private _bucketName?; get bucketName(): string; set bucketName(value: string); get bucketNameInput(): string; private _objectName?; get objectName(): string; set objectName(value: string); get objectNameInput(): string; private _sha256?; get sha256(): string; set sha256(value: string); resetSha256(): void; get sha256Input(): string; } export interface FunctionResourceSecrets { /** * Function's environment variable in which secret's value will be stored. Must begin with a letter (A-Z, a-z). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#environment_variable FunctionResource#environment_variable} */ readonly environmentVariable: string; /** * Secret's ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#id FunctionResource#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id: string; /** * Secret's entries key which value will be stored in environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#key FunctionResource#key} */ readonly key: string; /** * Secret's version ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#version_id FunctionResource#version_id} */ readonly versionId: string; } export declare function functionResourceSecretsToTerraform(struct?: FunctionResourceSecrets | cdktf.IResolvable): any; export declare function functionResourceSecretsToHclTerraform(struct?: FunctionResourceSecrets | cdktf.IResolvable): any; export declare class FunctionResourceSecretsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): FunctionResourceSecrets | cdktf.IResolvable | undefined; set internalValue(value: FunctionResourceSecrets | cdktf.IResolvable | undefined); private _environmentVariable?; get environmentVariable(): string; set environmentVariable(value: string); get environmentVariableInput(): string; private _id?; get id(): string; set id(value: string); get idInput(): string; private _key?; get key(): string; set key(value: string); get keyInput(): string; private _versionId?; get versionId(): string; set versionId(value: string); get versionIdInput(): string; } export declare class FunctionResourceSecretsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: FunctionResourceSecrets[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): FunctionResourceSecretsOutputReference; } export interface FunctionResourceStorageMounts { /** * Name of the mounting bucket. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#bucket FunctionResource#bucket} */ readonly bucket: string; /** * Name of the mount point. The directory where the bucket is mounted will be accessible at the `/function/storage/` path. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#mount_point_name FunctionResource#mount_point_name} */ readonly mountPointName: string; /** * Prefix within the bucket. If you leave this field empty, the entire bucket will be mounted. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#prefix FunctionResource#prefix} */ readonly prefix?: string; /** * Mount the bucket in read-only mode. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#read_only FunctionResource#read_only} */ readonly readOnly?: boolean | cdktf.IResolvable; } export declare function functionResourceStorageMountsToTerraform(struct?: FunctionResourceStorageMounts | cdktf.IResolvable): any; export declare function functionResourceStorageMountsToHclTerraform(struct?: FunctionResourceStorageMounts | cdktf.IResolvable): any; export declare class FunctionResourceStorageMountsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): FunctionResourceStorageMounts | cdktf.IResolvable | undefined; set internalValue(value: FunctionResourceStorageMounts | cdktf.IResolvable | undefined); private _bucket?; get bucket(): string; set bucket(value: string); get bucketInput(): string; private _mountPointName?; get mountPointName(): string; set mountPointName(value: string); get mountPointNameInput(): string; private _prefix?; get prefix(): string; set prefix(value: string); resetPrefix(): void; get prefixInput(): string; private _readOnly?; get readOnly(): boolean | cdktf.IResolvable; set readOnly(value: boolean | cdktf.IResolvable); resetReadOnly(): void; get readOnlyInput(): any; } export declare class FunctionResourceStorageMountsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: FunctionResourceStorageMounts[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): FunctionResourceStorageMountsOutputReference; } export interface FunctionResourceTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#create FunctionResource#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#delete FunctionResource#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#update FunctionResource#update} */ readonly update?: string; } export declare function functionResourceTimeoutsToTerraform(struct?: FunctionResourceTimeouts | cdktf.IResolvable): any; export declare function functionResourceTimeoutsToHclTerraform(struct?: FunctionResourceTimeouts | cdktf.IResolvable): any; export declare class FunctionResourceTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): FunctionResourceTimeouts | cdktf.IResolvable | undefined; set internalValue(value: FunctionResourceTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function yandex_function} */ export declare class FunctionResource extends cdktf.TerraformResource { static readonly tfResourceType = "yandex_function"; /** * Generates CDKTF code for importing a FunctionResource resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the FunctionResource to import * @param importFromId The id of the existing FunctionResource that should be imported. Refer to the {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the FunctionResource to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/function yandex_function} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options FunctionResourceConfig */ constructor(scope: Construct, id: string, config: FunctionResourceConfig); private _concurrency?; get concurrency(): number; set concurrency(value: number); resetConcurrency(): void; get concurrencyInput(): number; get createdAt(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _entrypoint?; get entrypoint(): string; set entrypoint(value: string); get entrypointInput(): string; private _environment?; get environment(): { [key: string]: string; }; set environment(value: { [key: string]: string; }); resetEnvironment(): void; get environmentInput(): { [key: string]: string; }; private _executionTimeout?; get executionTimeout(): string; set executionTimeout(value: string); resetExecutionTimeout(): void; get executionTimeoutInput(): string; private _folderId?; get folderId(): string; set folderId(value: string); resetFolderId(): void; get folderIdInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; get imageSize(): any; private _labels?; get labels(): { [key: string]: string; }; set labels(value: { [key: string]: string; }); resetLabels(): void; get labelsInput(): { [key: string]: string; }; private _memory?; get memory(): number; set memory(value: number); get memoryInput(): number; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _runtime?; get runtime(): string; set runtime(value: string); get runtimeInput(): string; private _serviceAccountId?; get serviceAccountId(): string; set serviceAccountId(value: string); resetServiceAccountId(): void; get serviceAccountIdInput(): string; private _tags?; get tags(): string[]; set tags(value: string[]); resetTags(): void; get tagsInput(): string[]; private _tmpfsSize?; get tmpfsSize(): number; set tmpfsSize(value: number); resetTmpfsSize(): void; get tmpfsSizeInput(): number; private _userHash?; get userHash(): string; set userHash(value: string); get userHashInput(): string; get version(): any; private _asyncInvocation; get asyncInvocation(): FunctionResourceAsyncInvocationOutputReference; putAsyncInvocation(value: FunctionResourceAsyncInvocation): void; resetAsyncInvocation(): void; get asyncInvocationInput(): FunctionResourceAsyncInvocation; private _connectivity; get connectivity(): FunctionResourceConnectivityOutputReference; putConnectivity(value: FunctionResourceConnectivity): void; resetConnectivity(): void; get connectivityInput(): FunctionResourceConnectivity; private _content; get content(): FunctionResourceContentOutputReference; putContent(value: FunctionResourceContent): void; resetContent(): void; get contentInput(): FunctionResourceContent; private _logOptions; get logOptions(): FunctionResourceLogOptionsOutputReference; putLogOptions(value: FunctionResourceLogOptions): void; resetLogOptions(): void; get logOptionsInput(): FunctionResourceLogOptions; private _metadataOptions; get metadataOptions(): FunctionResourceMetadataOptionsOutputReference; putMetadataOptions(value: FunctionResourceMetadataOptions): void; resetMetadataOptions(): void; get metadataOptionsInput(): FunctionResourceMetadataOptions; private _mounts; get mounts(): FunctionResourceMountsList; putMounts(value: FunctionResourceMounts[] | cdktf.IResolvable): void; resetMounts(): void; get mountsInput(): any; private _package; get package(): FunctionResourcePackageOutputReference; putPackage(value: FunctionResourcePackage): void; resetPackage(): void; get packageInput(): FunctionResourcePackage; private _secrets; get secrets(): FunctionResourceSecretsList; putSecrets(value: FunctionResourceSecrets[] | cdktf.IResolvable): void; resetSecrets(): void; get secretsInput(): any; private _storageMounts; get storageMounts(): FunctionResourceStorageMountsList; putStorageMounts(value: FunctionResourceStorageMounts[] | cdktf.IResolvable): void; resetStorageMounts(): void; get storageMountsInput(): any; private _timeouts; get timeouts(): FunctionResourceTimeoutsOutputReference; putTimeouts(value: FunctionResourceTimeouts): void; resetTimeouts(): void; get timeoutsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }