import _m0 from 'protobufjs/minimal'; import { Duration } from '../../../../../google/protobuf/duration'; import { LogLevel_Level } from '../../../../../yandex/cloud/logging/v1/log_entry'; export declare const protobufPackage = "yandex.cloud.serverless.functions.v1"; export declare enum MetadataOption { /** METADATA_OPTION_UNSPECIFIED - Option is default */ METADATA_OPTION_UNSPECIFIED = 0, /** ENABLED - Option is enabled */ ENABLED = 1, /** DISABLED - Option is disabled */ DISABLED = 2, UNRECOGNIZED = -1 } export declare function metadataOptionFromJSON(object: any): MetadataOption; export declare function metadataOptionToJSON(object: MetadataOption): string; /** A serverless function. For details about the concept, see [Functions](/docs/functions/concepts/function). */ export interface Function { /** ID of the function. Generated at creation time. */ id: string; /** ID of the folder that the function belongs to. */ folderId: string; /** Creation timestamp for the function. */ createdAt?: Date; /** Name of the function. The name is unique within the folder. */ name: string; /** Description of the function. */ description: string; /** Function labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** URL that needs to be requested to invoke the function. */ httpInvokeUrl: string; /** Status of the function. */ status: Function_Status; } export declare enum Function_Status { STATUS_UNSPECIFIED = 0, /** CREATING - Function is being created. */ CREATING = 1, /** ACTIVE - Function is ready to be invoked. */ ACTIVE = 2, /** DELETING - Function is being deleted. */ DELETING = 3, /** ERROR - Function failed. */ ERROR = 4, UNRECOGNIZED = -1 } export declare function function_StatusFromJSON(object: any): Function_Status; export declare function function_StatusToJSON(object: Function_Status): string; export interface Function_LabelsEntry { key: string; value: string; } /** Version of a function. For details about the concept, see [Function versions](/docs/functions/concepts/function#version). */ export interface Version { /** ID of the version. */ id: string; /** ID of the function that the version belongs to. */ functionId: string; /** Description of the version. */ description: string; /** Creation timestamp for the version. */ createdAt?: Date; /** * ID of the runtime environment for the function. * * Supported environments and their identifiers are listed in the [Runtime environments](/docs/functions/concepts/runtime). */ runtime: string; /** * Entrypoint for the function: the name of the function to be called as the handler. * * Specified in the format `.`, for example, `index.myFunction`. */ entrypoint: string; /** Resources allocated to the version. */ resources?: Resources; /** * Timeout for the execution of the version. * * If the timeout is exceeded, Cloud Functions responds with a 504 HTTP code. */ executionTimeout?: Duration; /** ID of the service account associated with the version. */ serviceAccountId: string; /** Final size of the deployment package after unpacking. */ imageSize: number; /** Status of the version. */ status: Version_Status; /** Version tags. For details, see [Version tag](/docs/functions/concepts/function#tag). */ tags: string[]; /** Environment settings for the version. */ environment: { [key: string]: string; }; /** Network access. If specified the version will be attached to specified network/subnet(s). */ connectivity?: Connectivity; /** Additional service accounts to be used by the version. */ namedServiceAccounts: { [key: string]: string; }; /** Yandex Lockbox secrets to be used by the version. */ secrets: Secret[]; /** Options for logging from the function */ logOptions?: LogOptions; /** S3 mounts to be used by the version. */ storageMounts: StorageMount[]; /** Config for asynchronous invocations of the version */ asyncInvocationConfig?: AsyncInvocationConfig; /** Optional size of in-memory mounted /tmp directory in bytes. */ tmpfsSize: number; /** The maximum number of requests processed by a function instance at the same time */ concurrency: number; /** Mounts to be used by the version. */ mounts: Mount[]; /** Metadata options for the version. */ metadataOptions?: MetadataOptions; } export declare enum Version_Status { STATUS_UNSPECIFIED = 0, /** CREATING - Version is being created. */ CREATING = 1, /** ACTIVE - Version is ready to use. */ ACTIVE = 2, /** OBSOLETE - Version will be deleted soon. */ OBSOLETE = 3, /** DELETING - Version is being deleted. */ DELETING = 4, UNRECOGNIZED = -1 } export declare function version_StatusFromJSON(object: any): Version_Status; export declare function version_StatusToJSON(object: Version_Status): string; export interface Version_EnvironmentEntry { key: string; value: string; } export interface Version_NamedServiceAccountsEntry { key: string; value: string; } /** Resources allocated to a version. */ export interface Resources { /** Amount of memory available to the version, specified in bytes, multiple of 128MB. */ memory: number; } /** Version deployment package. */ export interface Package { /** Name of the bucket that stores the code for the version. */ bucketName: string; /** Name of the object in the bucket that stores the code for the version. */ objectName: string; /** SHA256 hash of the version deployment package. */ sha256: string; } /** Version connectivity specification. */ export interface Connectivity { /** * Network the version will have access to. * It's essential to specify network with subnets in all availability zones. */ networkId: string; /** * Complete list of subnets (from the same network) the version can be attached to. * It's essential to specify at least one subnet for each availability zones. */ subnetId: string[]; } export interface ScalingPolicy { /** ID of the function that the scaling policy belongs to. */ functionId: string; /** Tag of the version that the scaling policy belongs to. For details, see [Version tag](/docs/functions/concepts/function#tag). */ tag: string; /** Creation timestamp for the scaling policy */ createdAt?: Date; /** Modification timestamp for the scaling policy */ modifiedAt?: Date; /** * Minimum guaranteed provisioned instances count for all zones in total. * Billed separately. */ provisionedInstancesCount: number; /** * Upper limit for instance count in each zone. * 0 means no limit. */ zoneInstancesLimit: number; /** * Upper limit of requests count in each zone. * 0 means no limit. */ zoneRequestsLimit: number; } /** Secret for serverless function. */ export interface Secret { /** ID of Yandex Lockbox secret. */ id: string; /** ID of Yandex Lockbox version. */ versionId: string; /** Key in secret's payload, which value to be delivered into function environment. */ key: string; /** environment variable in which secret's value to be delivered. */ environmentVariable: string | undefined; } export interface LogOptions { /** Is logging from function disabled. */ disabled: boolean; /** Entry should be written to log group resolved by ID. */ logGroupId: string | undefined; /** Entry should be written to default log group for specified folder. */ folderId: string | undefined; /** * Minimum log entry level. * * See [LogLevel.Level] for details. */ minLevel: LogLevel_Level; } /** @deprecated */ export interface StorageMount { /** S3 bucket name for mounting. */ bucketId: string; /** S3 bucket prefix for mounting. */ prefix: string; /** Mount point directory name (not path) for mounting. */ mountPointName: string; /** Is mount read only. */ readOnly: boolean; } /** Mount contains an information about version's external storage mount */ export interface Mount { /** Unique mount point name. Device will be mounted into /function/storage/ */ name: string; /** Mount's mode */ mode: Mount_Mode; /** Object storage mounts */ objectStorage?: Mount_ObjectStorage | undefined; /** Working disk (worker-local non-shared read-write NBS disk templates) */ ephemeralDiskSpec?: Mount_DiskSpec | undefined; } export declare enum Mount_Mode { MODE_UNSPECIFIED = 0, READ_ONLY = 1, READ_WRITE = 2, UNRECOGNIZED = -1 } export declare function mount_ModeFromJSON(object: any): Mount_Mode; export declare function mount_ModeToJSON(object: Mount_Mode): string; /** ObjectStorage as a mount */ export interface Mount_ObjectStorage { /** ObjectStorage bucket name for mounting. */ bucketId: string; /** ObjectStorage bucket prefix for mounting. */ prefix: string; } /** Disk as a mount */ export interface Mount_DiskSpec { /** The size of disk for mount in bytes */ size: number; /** Optional block size of disk for mount in bytes */ blockSize: number; } export interface AsyncInvocationConfig { /** Number of retries of version invocation */ retriesCount: number; /** Target for successful result of the version's invocation */ successTarget?: AsyncInvocationConfig_ResponseTarget; /** Target for unsuccessful result, if all retries failed */ failureTarget?: AsyncInvocationConfig_ResponseTarget; /** Service account which can invoke version */ serviceAccountId: string; } /** Target to which a result of an invocation will be sent */ export interface AsyncInvocationConfig_ResponseTarget { /** Target to ignore a result */ emptyTarget?: EmptyTarget | undefined; /** Target to send a result to ymq */ ymqTarget?: YMQTarget | undefined; } export interface YMQTarget { /** Queue ARN */ queueArn: string; /** Service account which has write permission on the queue. */ serviceAccountId: string; } export interface EmptyTarget { } export interface MetadataOptions { /** Enabled access to GCE flavored metadata */ gceHttpEndpoint: MetadataOption; /** Enabled access to AWS flavored metadata (IMDSv1) */ awsV1HttpEndpoint: MetadataOption; } export declare const Function: { encode(message: Function, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Function; fromJSON(object: any): Function; toJSON(message: Function): unknown; fromPartial(object: I): Function; }; export declare const Function_LabelsEntry: { encode(message: Function_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Function_LabelsEntry; fromJSON(object: any): Function_LabelsEntry; toJSON(message: Function_LabelsEntry): unknown; fromPartial, never>>(object: I): Function_LabelsEntry; }; export declare const Version: { encode(message: Version, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Version; fromJSON(object: any): Version; toJSON(message: Version): unknown; fromPartial, never>) | undefined; executionTimeout?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; serviceAccountId?: string | undefined; imageSize?: number | undefined; status?: Version_Status | undefined; tags?: (string[] & string[] & Record, never>) | undefined; environment?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; connectivity?: ({ networkId?: string | undefined; subnetId?: string[] | undefined; } & { networkId?: string | undefined; subnetId?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; namedServiceAccounts?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; secrets?: ({ id?: string | undefined; versionId?: string | undefined; key?: string | undefined; environmentVariable?: string | undefined; }[] & ({ id?: string | undefined; versionId?: string | undefined; key?: string | undefined; environmentVariable?: string | undefined; } & { id?: string | undefined; versionId?: string | undefined; key?: string | undefined; environmentVariable?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; logOptions?: ({ disabled?: boolean | undefined; logGroupId?: string | undefined; folderId?: string | undefined; minLevel?: LogLevel_Level | undefined; } & { disabled?: boolean | undefined; logGroupId?: string | undefined; folderId?: string | undefined; minLevel?: LogLevel_Level | undefined; } & Record, never>) | undefined; storageMounts?: ({ bucketId?: string | undefined; prefix?: string | undefined; mountPointName?: string | undefined; readOnly?: boolean | undefined; }[] & ({ bucketId?: string | undefined; prefix?: string | undefined; mountPointName?: string | undefined; readOnly?: boolean | undefined; } & { bucketId?: string | undefined; prefix?: string | undefined; mountPointName?: string | undefined; readOnly?: boolean | undefined; } & Record, never>)[] & Record, never>) | undefined; asyncInvocationConfig?: ({ retriesCount?: number | undefined; successTarget?: { emptyTarget?: {} | undefined; ymqTarget?: { queueArn?: string | undefined; serviceAccountId?: string | undefined; } | undefined; } | undefined; failureTarget?: { emptyTarget?: {} | undefined; ymqTarget?: { queueArn?: string | undefined; serviceAccountId?: string | undefined; } | undefined; } | undefined; serviceAccountId?: string | undefined; } & { retriesCount?: number | undefined; successTarget?: ({ emptyTarget?: {} | undefined; ymqTarget?: { queueArn?: string | undefined; serviceAccountId?: string | undefined; } | undefined; } & { emptyTarget?: ({} & {} & Record, never>) | undefined; ymqTarget?: ({ queueArn?: string | undefined; serviceAccountId?: string | undefined; } & { queueArn?: string | undefined; serviceAccountId?: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; failureTarget?: ({ emptyTarget?: {} | undefined; ymqTarget?: { queueArn?: string | undefined; serviceAccountId?: string | undefined; } | undefined; } & { emptyTarget?: ({} & {} & Record, never>) | undefined; ymqTarget?: ({ queueArn?: string | undefined; serviceAccountId?: string | undefined; } & { queueArn?: string | undefined; serviceAccountId?: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; serviceAccountId?: string | undefined; } & Record, never>) | undefined; tmpfsSize?: number | undefined; concurrency?: number | undefined; mounts?: ({ name?: string | undefined; mode?: Mount_Mode | undefined; objectStorage?: { bucketId?: string | undefined; prefix?: string | undefined; } | undefined; ephemeralDiskSpec?: { size?: number | undefined; blockSize?: number | undefined; } | undefined; }[] & ({ name?: string | undefined; mode?: Mount_Mode | undefined; objectStorage?: { bucketId?: string | undefined; prefix?: string | undefined; } | undefined; ephemeralDiskSpec?: { size?: number | undefined; blockSize?: number | undefined; } | undefined; } & { name?: string | undefined; mode?: Mount_Mode | undefined; objectStorage?: ({ bucketId?: string | undefined; prefix?: string | undefined; } & { bucketId?: string | undefined; prefix?: string | undefined; } & Record, never>) | undefined; ephemeralDiskSpec?: ({ size?: number | undefined; blockSize?: number | undefined; } & { size?: number | undefined; blockSize?: number | undefined; } & Record, never>) | undefined; } & Record, never>)[] & Record, never>) | undefined; metadataOptions?: ({ gceHttpEndpoint?: MetadataOption | undefined; awsV1HttpEndpoint?: MetadataOption | undefined; } & { gceHttpEndpoint?: MetadataOption | undefined; awsV1HttpEndpoint?: MetadataOption | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Version; }; export declare const Version_EnvironmentEntry: { encode(message: Version_EnvironmentEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Version_EnvironmentEntry; fromJSON(object: any): Version_EnvironmentEntry; toJSON(message: Version_EnvironmentEntry): unknown; fromPartial, never>>(object: I): Version_EnvironmentEntry; }; export declare const Version_NamedServiceAccountsEntry: { encode(message: Version_NamedServiceAccountsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Version_NamedServiceAccountsEntry; fromJSON(object: any): Version_NamedServiceAccountsEntry; toJSON(message: Version_NamedServiceAccountsEntry): unknown; fromPartial, never>>(object: I): Version_NamedServiceAccountsEntry; }; export declare const Resources: { encode(message: Resources, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Resources; fromJSON(object: any): Resources; toJSON(message: Resources): unknown; fromPartial, never>>(object: I): Resources; }; export declare const Package: { encode(message: Package, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Package; fromJSON(object: any): Package; toJSON(message: Package): unknown; fromPartial, never>>(object: I): Package; }; export declare const Connectivity: { encode(message: Connectivity, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Connectivity; fromJSON(object: any): Connectivity; toJSON(message: Connectivity): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Connectivity; }; export declare const ScalingPolicy: { encode(message: ScalingPolicy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ScalingPolicy; fromJSON(object: any): ScalingPolicy; toJSON(message: ScalingPolicy): unknown; fromPartial, never>>(object: I): ScalingPolicy; }; export declare const Secret: { encode(message: Secret, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Secret; fromJSON(object: any): Secret; toJSON(message: Secret): unknown; fromPartial, never>>(object: I): Secret; }; export declare const LogOptions: { encode(message: LogOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogOptions; fromJSON(object: any): LogOptions; toJSON(message: LogOptions): unknown; fromPartial, never>>(object: I): LogOptions; }; export declare const StorageMount: { encode(message: StorageMount, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): StorageMount; fromJSON(object: any): StorageMount; toJSON(message: StorageMount): unknown; fromPartial, never>>(object: I): StorageMount; }; export declare const Mount: { encode(message: Mount, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Mount; fromJSON(object: any): Mount; toJSON(message: Mount): unknown; fromPartial, never>) | undefined; ephemeralDiskSpec?: ({ size?: number | undefined; blockSize?: number | undefined; } & { size?: number | undefined; blockSize?: number | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Mount; }; export declare const Mount_ObjectStorage: { encode(message: Mount_ObjectStorage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Mount_ObjectStorage; fromJSON(object: any): Mount_ObjectStorage; toJSON(message: Mount_ObjectStorage): unknown; fromPartial, never>>(object: I): Mount_ObjectStorage; }; export declare const Mount_DiskSpec: { encode(message: Mount_DiskSpec, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Mount_DiskSpec; fromJSON(object: any): Mount_DiskSpec; toJSON(message: Mount_DiskSpec): unknown; fromPartial, never>>(object: I): Mount_DiskSpec; }; export declare const AsyncInvocationConfig: { encode(message: AsyncInvocationConfig, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): AsyncInvocationConfig; fromJSON(object: any): AsyncInvocationConfig; toJSON(message: AsyncInvocationConfig): unknown; fromPartial, never>) | undefined; ymqTarget?: ({ queueArn?: string | undefined; serviceAccountId?: string | undefined; } & { queueArn?: string | undefined; serviceAccountId?: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; failureTarget?: ({ emptyTarget?: {} | undefined; ymqTarget?: { queueArn?: string | undefined; serviceAccountId?: string | undefined; } | undefined; } & { emptyTarget?: ({} & {} & Record, never>) | undefined; ymqTarget?: ({ queueArn?: string | undefined; serviceAccountId?: string | undefined; } & { queueArn?: string | undefined; serviceAccountId?: string | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; serviceAccountId?: string | undefined; } & Record, never>>(object: I): AsyncInvocationConfig; }; export declare const AsyncInvocationConfig_ResponseTarget: { encode(message: AsyncInvocationConfig_ResponseTarget, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): AsyncInvocationConfig_ResponseTarget; fromJSON(object: any): AsyncInvocationConfig_ResponseTarget; toJSON(message: AsyncInvocationConfig_ResponseTarget): unknown; fromPartial, never>) | undefined; ymqTarget?: ({ queueArn?: string | undefined; serviceAccountId?: string | undefined; } & { queueArn?: string | undefined; serviceAccountId?: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): AsyncInvocationConfig_ResponseTarget; }; export declare const YMQTarget: { encode(message: YMQTarget, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): YMQTarget; fromJSON(object: any): YMQTarget; toJSON(message: YMQTarget): unknown; fromPartial, never>>(object: I): YMQTarget; }; export declare const EmptyTarget: { encode(_: EmptyTarget, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): EmptyTarget; fromJSON(_: any): EmptyTarget; toJSON(_: EmptyTarget): unknown; fromPartial, never>>(_: I): EmptyTarget; }; export declare const MetadataOptions: { encode(message: MetadataOptions, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): MetadataOptions; fromJSON(object: any): MetadataOptions; toJSON(message: MetadataOptions): unknown; fromPartial, never>>(object: I): MetadataOptions; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};