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.containers.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; export interface Container { /** ID of the container. Generated at creation time. */ id: string; /** ID of the folder that the container belongs to. */ folderId: string; /** Creation timestamp for the container. */ createdAt?: Date; /** Name of the container. The name is unique within the folder. */ name: string; /** Description of the container. */ description: string; /** Container labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** URL that needs to be requested to call the container. */ url: string; /** Status of the container. */ status: Container_Status; } export declare enum Container_Status { STATUS_UNSPECIFIED = 0, /** CREATING - Container is being created. */ CREATING = 1, /** ACTIVE - Container is ready for use. */ ACTIVE = 2, /** DELETING - Container is being deleted. */ DELETING = 3, /** ERROR - Container failed. The only allowed action is delete. */ ERROR = 4, UNRECOGNIZED = -1 } export declare function container_StatusFromJSON(object: any): Container_Status; export declare function container_StatusToJSON(object: Container_Status): string; export interface Container_LabelsEntry { key: string; value: string; } export interface Revision { /** ID of the revision. */ id: string; /** ID of the container that the revision belongs to. */ containerId: string; /** Description of the revision. */ description: string; /** Creation timestamp for the revision. */ createdAt?: Date; /** Image configuration for the revision. */ image?: Image; /** Resources allocated to the revision. */ resources?: Resources; /** * Timeout for the execution of the revision. * * If the timeout is exceeded, Serverless Containers responds with a 504 HTTP code. */ executionTimeout?: Duration; /** The number of concurrent requests allowed per container instance. */ concurrency: number; /** ID of the service account associated with the revision. */ serviceAccountId: string; /** Status of the revision. */ status: Revision_Status; /** Yandex Lockbox secrets to be used by the revision. */ secrets: Secret[]; /** Network access. If specified the revision will be attached to specified network/subnet(s). */ connectivity?: Connectivity; /** * Policy for provisioning instances of the revision. * * The policy is only applied when the revision is ACTIVE. */ provisionPolicy?: ProvisionPolicy; /** Policy for scaling instances of the revision. */ scalingPolicy?: ScalingPolicy; /** Options for logging from the container. */ logOptions?: LogOptions; /** S3 mounts to be used by the revision. */ storageMounts: StorageMount[]; /** Mounts to be used by the revision. */ mounts: Mount[]; /** The container's execution mode */ runtime?: Runtime; /** Metadata options for the revision. */ metadataOptions?: MetadataOptions; } export declare enum Revision_Status { STATUS_UNSPECIFIED = 0, /** CREATING - Revision is being created. */ CREATING = 1, /** ACTIVE - Revision is currently used by the container. */ ACTIVE = 2, /** OBSOLETE - Revision is not used by the container. May be deleted later. */ OBSOLETE = 3, UNRECOGNIZED = -1 } export declare function revision_StatusFromJSON(object: any): Revision_Status; export declare function revision_StatusToJSON(object: Revision_Status): string; /** Revision image specification. */ export interface Image { /** Image URL, that is used by the revision. */ imageUrl: string; /** Digest of the image. Calculated at creation time. */ imageDigest: string; /** Override for the image's ENTRYPOINT. */ command?: Command; /** Override for the image's CMD. */ args?: Args; /** Additional environment for the container. */ environment: { [key: string]: string; }; /** Override for the image's WORKDIR. */ workingDir: string; } export interface Image_EnvironmentEntry { key: string; value: string; } export interface Command { /** * Command that will override ENTRYPOINT of an image. * * Commands will be executed as is. The runtime will not substitute environment * variables or execute shell commands. If one wants to do that, they should * invoke shell interpreter with an appropriate shell script. */ command: string[]; } export interface Args { /** * Arguments that will override CMD of an image. * * Arguments will be passed as is. The runtime will not substitute environment * variables or execute shell commands. If one wants to do that, they should * invoke shell interpreter with an appropriate shell script. */ args: string[]; } /** Resources allocated to a revision. */ export interface Resources { /** Amount of memory available to the revision, specified in bytes, multiple of 128MB. */ memory: number; /** Number of cores available to the revision. */ cores: number; /** * Specifies baseline performance for a core in percent, multiple of 5%. * Should be 100% for cores > 1. */ coreFraction: number; } export interface ProvisionPolicy { /** * Minimum number of guaranteed provisioned container instances for all zones * in total. */ minInstances: number; } /** Secret that is available to the container at run time. */ export interface Secret { /** ID of Yandex Lockbox secret. */ id: string; /** ID of Yandex Lockbox secret. */ versionId: string; /** Key in secret's payload, which value to be delivered into container environment. */ key: string; /** Environment variable in which secret's value is delivered. */ environmentVariable: string | undefined; } /** Revision connectivity specification. */ export interface Connectivity { /** Network the revision will have access to. */ networkId: string; /** * The list of subnets (from the same network) the revision can be attached to. * * Deprecated, it is sufficient to specify only network_id, without the list of subnet_ids. */ subnetIds: string[]; } export interface LogOptions { /** Is logging from container 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; } export interface ScalingPolicy { /** * 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; } /** @deprecated */ export interface StorageMount { /** S3 bucket name for mounting. */ bucketId: string; /** S3 bucket prefix for mounting. */ prefix: string; /** Is mount read only. */ readOnly: boolean; /** Mount point path inside the container for mounting. */ mountPointPath: string; } /** Mount contains an information about version's external storage mount */ export interface Mount { /** The absolute mount point path inside the container for mounting. */ mountPointPath: 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; } /** The container's execution mode */ export interface Runtime { /** The classic one. You need to run an HTTP server inside the container. */ http?: Runtime_Http | undefined; /** We run a process from ENTRYPOINT inside the container for each user request. */ task?: Runtime_Task | undefined; } export interface Runtime_Http { } export interface Runtime_Task { } export interface MetadataOptions { /** Enabled access to GCE flavored metadata */ gceHttpEndpoint: MetadataOption; /** Enabled access to AWS flavored metadata (IMDSv1) */ awsV1HttpEndpoint: MetadataOption; } export declare const Container: { encode(message: Container, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Container; fromJSON(object: any): Container; toJSON(message: Container): unknown; fromPartial, never>) | undefined; url?: string | undefined; status?: Container_Status | undefined; } & Record, never>>(object: I): Container; }; export declare const Container_LabelsEntry: { encode(message: Container_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Container_LabelsEntry; fromJSON(object: any): Container_LabelsEntry; toJSON(message: Container_LabelsEntry): unknown; fromPartial, never>>(object: I): Container_LabelsEntry; }; export declare const Revision: { encode(message: Revision, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Revision; fromJSON(object: any): Revision; toJSON(message: Revision): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; args?: ({ args?: string[] | undefined; } & { args?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; environment?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; workingDir?: string | undefined; } & Record, never>) | undefined; resources?: ({ memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; } & { memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; } & Record, never>) | undefined; executionTimeout?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record, never>) | undefined; concurrency?: number | undefined; serviceAccountId?: string | undefined; status?: Revision_Status | 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; connectivity?: ({ networkId?: string | undefined; subnetIds?: string[] | undefined; } & { networkId?: string | undefined; subnetIds?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; provisionPolicy?: ({ minInstances?: number | undefined; } & { minInstances?: number | undefined; } & Record, never>) | undefined; scalingPolicy?: ({ zoneInstancesLimit?: number | undefined; zoneRequestsLimit?: number | undefined; } & { zoneInstancesLimit?: number | undefined; zoneRequestsLimit?: number | undefined; } & 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; readOnly?: boolean | undefined; mountPointPath?: string | undefined; }[] & ({ bucketId?: string | undefined; prefix?: string | undefined; readOnly?: boolean | undefined; mountPointPath?: string | undefined; } & { bucketId?: string | undefined; prefix?: string | undefined; readOnly?: boolean | undefined; mountPointPath?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; mounts?: ({ mountPointPath?: string | undefined; mode?: Mount_Mode | undefined; objectStorage?: { bucketId?: string | undefined; prefix?: string | undefined; } | undefined; ephemeralDiskSpec?: { size?: number | undefined; blockSize?: number | undefined; } | undefined; }[] & ({ mountPointPath?: string | undefined; mode?: Mount_Mode | undefined; objectStorage?: { bucketId?: string | undefined; prefix?: string | undefined; } | undefined; ephemeralDiskSpec?: { size?: number | undefined; blockSize?: number | undefined; } | undefined; } & { mountPointPath?: 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; runtime?: ({ http?: {} | undefined; task?: {} | undefined; } & { http?: ({} & {} & Record, never>) | undefined; task?: ({} & {} & Record, never>) | undefined; } & Record, never>) | undefined; metadataOptions?: ({ gceHttpEndpoint?: MetadataOption | undefined; awsV1HttpEndpoint?: MetadataOption | undefined; } & { gceHttpEndpoint?: MetadataOption | undefined; awsV1HttpEndpoint?: MetadataOption | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Revision; }; export declare const Image: { encode(message: Image, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Image; fromJSON(object: any): Image; toJSON(message: Image): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; args?: ({ args?: string[] | undefined; } & { args?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; environment?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; workingDir?: string | undefined; } & Record, never>>(object: I): Image; }; export declare const Image_EnvironmentEntry: { encode(message: Image_EnvironmentEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Image_EnvironmentEntry; fromJSON(object: any): Image_EnvironmentEntry; toJSON(message: Image_EnvironmentEntry): unknown; fromPartial, never>>(object: I): Image_EnvironmentEntry; }; export declare const Command: { encode(message: Command, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Command; fromJSON(object: any): Command; toJSON(message: Command): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Command; }; export declare const Args: { encode(message: Args, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Args; fromJSON(object: any): Args; toJSON(message: Args): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): Args; }; 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 ProvisionPolicy: { encode(message: ProvisionPolicy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ProvisionPolicy; fromJSON(object: any): ProvisionPolicy; toJSON(message: ProvisionPolicy): unknown; fromPartial, never>>(object: I): ProvisionPolicy; }; 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 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 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 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 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 Runtime: { encode(message: Runtime, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Runtime; fromJSON(object: any): Runtime; toJSON(message: Runtime): unknown; fromPartial, never>) | undefined; task?: ({} & {} & Record, never>) | undefined; } & Record, never>>(object: I): Runtime; }; export declare const Runtime_Http: { encode(_: Runtime_Http, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Runtime_Http; fromJSON(_: any): Runtime_Http; toJSON(_: Runtime_Http): unknown; fromPartial, never>>(_: I): Runtime_Http; }; export declare const Runtime_Task: { encode(_: Runtime_Task, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Runtime_Task; fromJSON(_: any): Runtime_Task; toJSON(_: Runtime_Task): unknown; fromPartial, never>>(_: I): Runtime_Task; }; 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 {};