@yandex-cloud/nodejs-sdk
Version:
Yandex.Cloud NodeJS SDK
995 lines • 106 kB
TypeScript
/// <reference types="node" />
import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from "@grpc/grpc-js";
import _m0 from "protobufjs/minimal";
import { AnonymousAccessFlags, ACL, WebsiteSettings, Versioning, ObjectLock, Encryption, Bucket, Tag, CorsRule, LifecycleRule, BucketStats, HTTPSConfig } from "../../../../yandex/cloud/storage/v1/bucket";
import { FieldMask } from "../../../../google/protobuf/field_mask";
import { Operation } from "../../../../yandex/cloud/operation/operation";
export declare const protobufPackage = "yandex.cloud.storage.v1";
export interface GetBucketRequest {
$type: "yandex.cloud.storage.v1.GetBucketRequest";
/**
* Name of the bucket to return.
*
* To get the bucket name, make a [BucketService.List] request.
*/
name: string;
/**
* Scope of information about the bucket to return.
*
* Access to scopes is managed via [Identity and Access Management roles](/docs/storage/security),
* bucket [ACL](/docs/storage/concepts/acl) and [policies](/docs/storage/concepts/policy).
*/
view: GetBucketRequest_View;
}
export declare enum GetBucketRequest_View {
VIEW_UNSPECIFIED = 0,
/**
* VIEW_BASIC - Returns basic information about a bucket.
*
* The following fields will _not_ be returned: [Bucket.acl], [Bucket.cors], [Bucket.website_settings],
* [Bucket.lifecycle_rules], [Bucket.tags].
*/
VIEW_BASIC = 1,
/**
* VIEW_ACL - Returns basic information and access control list (ACL) for the bucket.
*
* The following fields will _not_ be returned: [Bucket.cors], [Bucket.website_settings], [Bucket.lifecycle_rules],
* [Bucket.tags].
*/
VIEW_ACL = 2,
/** VIEW_FULL - Returns full information about a bucket. */
VIEW_FULL = 3,
UNRECOGNIZED = -1
}
export declare function getBucketRequest_ViewFromJSON(object: any): GetBucketRequest_View;
export declare function getBucketRequest_ViewToJSON(object: GetBucketRequest_View): string;
export interface ListBucketsRequest {
$type: "yandex.cloud.storage.v1.ListBucketsRequest";
/**
* ID of the folder to list buckets in.
*
* To get the folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
*/
folderId: string;
}
export interface ListBucketsResponse {
$type: "yandex.cloud.storage.v1.ListBucketsResponse";
/** List of buckets in the specified folder. */
buckets: Bucket[];
}
export interface CreateBucketRequest {
$type: "yandex.cloud.storage.v1.CreateBucketRequest";
/**
* Name of the bucket.
*
* The name must be unique within the platform. For naming limitations and rules, see
* [documentation](/docs/storage/concepts/bucket#naming).
*/
name: string;
/**
* ID of the folder to create a bucket in.
*
* To get the folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
*/
folderId: string;
/**
* Default storage class for objects in the bucket. Supported classes are standard storage (`STANDARD`), cold storage
* (`COLD`, `STANDARD_IA`, `NEARLINE` all synonyms), and ice storage (`ICE` and `GLACIER` are synonyms).
* For details, see [documentation](/docs/storage/concepts/storage-class).
*/
defaultStorageClass: string;
/**
* Maximum size of the bucket.
* For details, see [documentation](/docs/storage/operations/buckets/limit-max-volume).
*/
maxSize: number;
/**
* Flags for configuring public (anonymous) access to the bucket's content and settings.
* For details, see [documentation](/docs/storage/concepts/bucket#bucket-access).
*/
anonymousAccessFlags?: AnonymousAccessFlags;
/**
* Access control list (ACL) of the bucket.
* For details, see [documentation](/docs/storage/concepts/acl).
*/
acl?: ACL;
/**
* List of tags for the bucket.
* For details, see [documentation](/docs/resource-manager/concepts/labels).
*/
tags: Tag[];
}
export interface CreateBucketMetadata {
$type: "yandex.cloud.storage.v1.CreateBucketMetadata";
/** Name of the bucket that is being created. */
name: string;
}
export interface UpdateBucketRequest {
$type: "yandex.cloud.storage.v1.UpdateBucketRequest";
/**
* Name of the bucket to update.
*
* The name cannot be updated.
*
* To get the bucket name, make a [BucketService.List] request.
*/
name: string;
/**
* Update mask that specifies which attributes of the bucket should be updated.
* Use * for full update.
*/
updateMask?: FieldMask;
/**
* Flags for configuring public (anonymous) access to the bucket's content and settings.
* For details, see [documentation](/docs/storage/concepts/bucket#bucket-access).
*/
anonymousAccessFlags?: AnonymousAccessFlags;
/**
* Default storage class for objects in the bucket. Supported classes are standard storage (`STANDARD`), cold storage
* (`COLD`, `STANDARD_IA`, `NEARLINE` all synonyms), and ice storage (`ICE` and `GLACIER` are synonyms).
* For details, see [documentation](/docs/storage/concepts/storage-class).
*/
defaultStorageClass: string;
/**
* Maximum size of the bucket, in bytes.
* For details, see [documentation](/docs/storage/operations/buckets/limit-max-volume).
*/
maxSize: number;
/**
* List of rules for cross-domain requests to objects in the bucket (cross-origin resource sharing, CORS).
* For details, see [documentation](/docs/storage/concepts/cors).
*/
cors: CorsRule[];
/**
* Configuration for hosting a static website in the bucket.
* For details, see [documentation](/docs/storage/concepts/hosting).
*/
websiteSettings?: WebsiteSettings;
/**
* Bucket versioning status.
* For details, see [documentation](/docs/storage/concepts/versioning).
*/
versioning: Versioning;
/**
* List of object lifecycle rules for the bucket.
* For details, see [documentation](/docs/storage/concepts/lifecycles).
*/
lifecycleRules: LifecycleRule[];
/**
* Bucket policies that set permissions for actions with the bucket, its objects, and groups of objects.
* For details, see [documentation](/docs/storage/concepts/policy).
*/
policy?: {
[key: string]: any;
};
/**
* Access control list (ACL) of the bucket.
* For details, see [documentation](/docs/storage/concepts/acl).
*/
acl?: ACL;
/**
* List of tags for the bucket.
* For details, see [documentation](/docs/resource-manager/concepts/labels).
*/
tags: Tag[];
/**
* Configuration for object lock on the bucket.
* For details about the concept, see [documentation](/docs/storage/concepts/object-lock).
*/
objectLock?: ObjectLock;
/**
* Configuration for bucket's encryption
* For detauls, see [documentation](/docs/storage/concepts/encryption)
*/
encryption?: Encryption;
}
export interface UpdateBucketMetadata {
$type: "yandex.cloud.storage.v1.UpdateBucketMetadata";
/** Name of the bucket that is being updated. */
name: string;
}
/** DeleteBucketRequest deletes requested bucket from the Cloud. */
export interface DeleteBucketRequest {
$type: "yandex.cloud.storage.v1.DeleteBucketRequest";
/**
* Name of the bucket to update.
*
* To get the bucket name, make a [BucketService.List] request.
*/
name: string;
}
export interface DeleteBucketMetadata {
$type: "yandex.cloud.storage.v1.DeleteBucketMetadata";
/** Name of the bucket that is being deleted. */
name: string;
}
export interface GetBucketStatsRequest {
$type: "yandex.cloud.storage.v1.GetBucketStatsRequest";
/** Name of the bucket to return the statistics for. */
name: string;
}
export interface GetBucketHTTPSConfigRequest {
$type: "yandex.cloud.storage.v1.GetBucketHTTPSConfigRequest";
/** Name of the bucket to return the HTTPS configuration for. */
name: string;
}
export interface SelfManagedHTTPSConfigParams {
$type: "yandex.cloud.storage.v1.SelfManagedHTTPSConfigParams";
/** [PEM](https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail)-encoded certificate. */
certificatePem: string;
/** [PEM](https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail)-encoded private key for the certificate. */
privateKeyPem: string;
}
/** A resource for a TLS certificate from Certificate Manager. */
export interface CertificateManagerHTTPSConfigParams {
$type: "yandex.cloud.storage.v1.CertificateManagerHTTPSConfigParams";
/**
* ID of the certificate.
*
* To get the list of all available certificates, make a [yandex.cloud.certificatemanager.v1.CertificateService.List]
* request.
*/
certificateId: string;
}
export interface SetBucketHTTPSConfigRequest {
$type: "yandex.cloud.storage.v1.SetBucketHTTPSConfigRequest";
/** Name of the bucket to update the HTTPS configuration for. */
name: string;
/**
* Your TLS certificate, uploaded directly.
*
* Object Storage only supports [PEM](https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail)-encoded certificates.
*/
selfManaged?: SelfManagedHTTPSConfigParams | undefined;
/**
* TLS certificate from Certificate Manager.
*
* To create a certificate in Certificate Manager, make a
* [yandex.cloud.certificatemanager.v1.CertificateService.Create] request.
*/
certificateManager?: CertificateManagerHTTPSConfigParams | undefined;
}
export interface SetBucketHTTPSConfigMetadata {
$type: "yandex.cloud.storage.v1.SetBucketHTTPSConfigMetadata";
/** Name of the bucket the HTTPS configuration is being updated for. */
name: string;
}
export interface DeleteBucketHTTPSConfigRequest {
$type: "yandex.cloud.storage.v1.DeleteBucketHTTPSConfigRequest";
/** Name of the bucket to delete the HTTPS configuration for. */
name: string;
}
export interface DeleteBucketHTTPSConfigMetadata {
$type: "yandex.cloud.storage.v1.DeleteBucketHTTPSConfigMetadata";
/** Name of the bucket the HTTPS configuration is being deleted for. */
name: string;
}
export declare const GetBucketRequest: {
$type: "yandex.cloud.storage.v1.GetBucketRequest";
encode(message: GetBucketRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number | undefined): GetBucketRequest;
fromJSON(object: any): GetBucketRequest;
toJSON(message: GetBucketRequest): unknown;
fromPartial<I extends {
name?: string | undefined;
view?: GetBucketRequest_View | undefined;
} & {
name?: string | undefined;
view?: GetBucketRequest_View | undefined;
} & Record<Exclude<keyof I, "$type" | "name" | "view">, never>>(object: I): GetBucketRequest;
};
export declare const ListBucketsRequest: {
$type: "yandex.cloud.storage.v1.ListBucketsRequest";
encode(message: ListBucketsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListBucketsRequest;
fromJSON(object: any): ListBucketsRequest;
toJSON(message: ListBucketsRequest): unknown;
fromPartial<I extends {
folderId?: string | undefined;
} & {
folderId?: string | undefined;
} & Record<Exclude<keyof I, "$type" | "folderId">, never>>(object: I): ListBucketsRequest;
};
export declare const ListBucketsResponse: {
$type: "yandex.cloud.storage.v1.ListBucketsResponse";
encode(message: ListBucketsResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListBucketsResponse;
fromJSON(object: any): ListBucketsResponse;
toJSON(message: ListBucketsResponse): unknown;
fromPartial<I extends {
buckets?: {
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
folderId?: string | undefined;
maxSize?: number | undefined;
cors?: {
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
}[] | undefined;
tags?: {
value?: string | undefined;
key?: string | undefined;
}[] | undefined;
policy?: {
[x: string]: any;
[x: number]: any;
} | undefined;
defaultStorageClass?: string | undefined;
versioning?: Versioning | undefined;
anonymousAccessFlags?: {
list?: boolean | undefined;
read?: boolean | undefined;
configRead?: boolean | undefined;
} | undefined;
acl?: {
grants?: {
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
}[] | undefined;
} | undefined;
websiteSettings?: {
error?: string | undefined;
index?: string | undefined;
redirectAllRequests?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
} | undefined;
routingRules?: {
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
}[] | undefined;
} | undefined;
lifecycleRules?: {
id?: string | undefined;
filter?: {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} | undefined;
enabled?: boolean | undefined;
expiration?: {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} | undefined;
transitions?: {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] | undefined;
abortIncompleteMultipartUpload?: {
daysAfterExpiration?: number | undefined;
} | undefined;
noncurrentExpiration?: {
noncurrentDays?: number | undefined;
} | undefined;
noncurrentTransitions?: {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] | undefined;
}[] | undefined;
objectLock?: {
status?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_ObjectLockStatus | undefined;
defaultRetention?: {
mode?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_DefaultRetention_Mode | undefined;
days?: number | undefined;
years?: number | undefined;
} | undefined;
} | undefined;
encryption?: {
rules?: {
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
}[] | undefined;
} | undefined;
}[] | undefined;
} & {
buckets?: ({
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
folderId?: string | undefined;
maxSize?: number | undefined;
cors?: {
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
}[] | undefined;
tags?: {
value?: string | undefined;
key?: string | undefined;
}[] | undefined;
policy?: {
[x: string]: any;
[x: number]: any;
} | undefined;
defaultStorageClass?: string | undefined;
versioning?: Versioning | undefined;
anonymousAccessFlags?: {
list?: boolean | undefined;
read?: boolean | undefined;
configRead?: boolean | undefined;
} | undefined;
acl?: {
grants?: {
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
}[] | undefined;
} | undefined;
websiteSettings?: {
error?: string | undefined;
index?: string | undefined;
redirectAllRequests?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
} | undefined;
routingRules?: {
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
}[] | undefined;
} | undefined;
lifecycleRules?: {
id?: string | undefined;
filter?: {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} | undefined;
enabled?: boolean | undefined;
expiration?: {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} | undefined;
transitions?: {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] | undefined;
abortIncompleteMultipartUpload?: {
daysAfterExpiration?: number | undefined;
} | undefined;
noncurrentExpiration?: {
noncurrentDays?: number | undefined;
} | undefined;
noncurrentTransitions?: {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] | undefined;
}[] | undefined;
objectLock?: {
status?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_ObjectLockStatus | undefined;
defaultRetention?: {
mode?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_DefaultRetention_Mode | undefined;
days?: number | undefined;
years?: number | undefined;
} | undefined;
} | undefined;
encryption?: {
rules?: {
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
}[] | undefined;
} | undefined;
}[] & ({
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
folderId?: string | undefined;
maxSize?: number | undefined;
cors?: {
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
}[] | undefined;
tags?: {
value?: string | undefined;
key?: string | undefined;
}[] | undefined;
policy?: {
[x: string]: any;
[x: number]: any;
} | undefined;
defaultStorageClass?: string | undefined;
versioning?: Versioning | undefined;
anonymousAccessFlags?: {
list?: boolean | undefined;
read?: boolean | undefined;
configRead?: boolean | undefined;
} | undefined;
acl?: {
grants?: {
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
}[] | undefined;
} | undefined;
websiteSettings?: {
error?: string | undefined;
index?: string | undefined;
redirectAllRequests?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
} | undefined;
routingRules?: {
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
}[] | undefined;
} | undefined;
lifecycleRules?: {
id?: string | undefined;
filter?: {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} | undefined;
enabled?: boolean | undefined;
expiration?: {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} | undefined;
transitions?: {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] | undefined;
abortIncompleteMultipartUpload?: {
daysAfterExpiration?: number | undefined;
} | undefined;
noncurrentExpiration?: {
noncurrentDays?: number | undefined;
} | undefined;
noncurrentTransitions?: {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] | undefined;
}[] | undefined;
objectLock?: {
status?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_ObjectLockStatus | undefined;
defaultRetention?: {
mode?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_DefaultRetention_Mode | undefined;
days?: number | undefined;
years?: number | undefined;
} | undefined;
} | undefined;
encryption?: {
rules?: {
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
}[] | undefined;
} | undefined;
} & {
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
folderId?: string | undefined;
maxSize?: number | undefined;
cors?: ({
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
}[] & ({
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
} & {
id?: string | undefined;
allowedMethods?: (import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] & import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] & Record<Exclude<keyof I["buckets"][number]["cors"][number]["allowedMethods"], "$type" | keyof import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[]>, never>) | undefined;
allowedHeaders?: (string[] & string[] & Record<Exclude<keyof I["buckets"][number]["cors"][number]["allowedHeaders"], "$type" | keyof string[]>, never>) | undefined;
allowedOrigins?: (string[] & string[] & Record<Exclude<keyof I["buckets"][number]["cors"][number]["allowedOrigins"], "$type" | keyof string[]>, never>) | undefined;
exposeHeaders?: (string[] & string[] & Record<Exclude<keyof I["buckets"][number]["cors"][number]["exposeHeaders"], "$type" | keyof string[]>, never>) | undefined;
maxAgeSeconds?: number | undefined;
} & Record<Exclude<keyof I["buckets"][number]["cors"][number], "$type" | "id" | "allowedMethods" | "allowedHeaders" | "allowedOrigins" | "exposeHeaders" | "maxAgeSeconds">, never>)[] & Record<Exclude<keyof I["buckets"][number]["cors"], "$type" | keyof {
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
}[]>, never>) | undefined;
tags?: ({
value?: string | undefined;
key?: string | undefined;
}[] & ({
value?: string | undefined;
key?: string | undefined;
} & {
value?: string | undefined;
key?: string | undefined;
} & Record<Exclude<keyof I["buckets"][number]["tags"][number], "$type" | "value" | "key">, never>)[] & Record<Exclude<keyof I["buckets"][number]["tags"], "$type" | keyof {
value?: string | undefined;
key?: string | undefined;
}[]>, never>) | undefined;
policy?: ({
[x: string]: any;
[x: number]: any;
} & {
[x: string]: any;
[x: number]: any;
} & Record<Exclude<keyof I["buckets"][number]["policy"], string | number>, never>) | undefined;
defaultStorageClass?: string | undefined;
versioning?: Versioning | undefined;
anonymousAccessFlags?: ({
list?: boolean | undefined;
read?: boolean | undefined;
configRead?: boolean | undefined;
} & {
list?: boolean | undefined;
read?: boolean | undefined;
configRead?: boolean | undefined;
} & Record<Exclude<keyof I["buckets"][number]["anonymousAccessFlags"], "$type" | "list" | "read" | "configRead">, never>) | undefined;
acl?: ({
grants?: {
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
}[] | undefined;
} & {
grants?: ({
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
}[] & ({
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
} & {
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
} & Record<Exclude<keyof I["buckets"][number]["acl"]["grants"][number], "$type" | "permission" | "grantType" | "granteeId">, never>)[] & Record<Exclude<keyof I["buckets"][number]["acl"]["grants"], "$type" | keyof {
permission?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_Permission | undefined;
grantType?: import("../../../../yandex/cloud/storage/v1/bucket").ACL_Grant_GrantType | undefined;
granteeId?: string | undefined;
}[]>, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number]["acl"], "$type" | "grants">, never>) | undefined;
websiteSettings?: ({
error?: string | undefined;
index?: string | undefined;
redirectAllRequests?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
} | undefined;
routingRules?: {
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
}[] | undefined;
} & {
error?: string | undefined;
index?: string | undefined;
redirectAllRequests?: ({
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
} & {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
} & Record<Exclude<keyof I["buckets"][number]["websiteSettings"]["redirectAllRequests"], "$type" | "hostname" | "protocol">, never>) | undefined;
routingRules?: ({
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
}[] & ({
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
} & {
redirect?: ({
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} & {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} & Record<Exclude<keyof I["buckets"][number]["websiteSettings"]["routingRules"][number]["redirect"], "$type" | "hostname" | "protocol" | "httpRedirectCode" | "replaceKeyPrefixWith" | "replaceKeyWith">, never>) | undefined;
condition?: ({
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} & {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} & Record<Exclude<keyof I["buckets"][number]["websiteSettings"]["routingRules"][number]["condition"], "$type" | "httpErrorCodeReturnedEquals" | "keyPrefixEquals">, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number]["websiteSettings"]["routingRules"][number], "$type" | "redirect" | "condition">, never>)[] & Record<Exclude<keyof I["buckets"][number]["websiteSettings"]["routingRules"], "$type" | keyof {
redirect?: {
hostname?: string | undefined;
protocol?: import("../../../../yandex/cloud/storage/v1/bucket").WebsiteSettings_Protocol | undefined;
httpRedirectCode?: string | undefined;
replaceKeyPrefixWith?: string | undefined;
replaceKeyWith?: string | undefined;
} | undefined;
condition?: {
httpErrorCodeReturnedEquals?: string | undefined;
keyPrefixEquals?: string | undefined;
} | undefined;
}[]>, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number]["websiteSettings"], "$type" | "error" | "index" | "redirectAllRequests" | "routingRules">, never>) | undefined;
lifecycleRules?: ({
id?: string | undefined;
filter?: {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} | undefined;
enabled?: boolean | undefined;
expiration?: {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} | undefined;
transitions?: {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] | undefined;
abortIncompleteMultipartUpload?: {
daysAfterExpiration?: number | undefined;
} | undefined;
noncurrentExpiration?: {
noncurrentDays?: number | undefined;
} | undefined;
noncurrentTransitions?: {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] | undefined;
}[] & ({
id?: string | undefined;
filter?: {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} | undefined;
enabled?: boolean | undefined;
expiration?: {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} | undefined;
transitions?: {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] | undefined;
abortIncompleteMultipartUpload?: {
daysAfterExpiration?: number | undefined;
} | undefined;
noncurrentExpiration?: {
noncurrentDays?: number | undefined;
} | undefined;
noncurrentTransitions?: {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] | undefined;
} & {
id?: string | undefined;
filter?: ({
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} & {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["filter"], "$type" | "prefix" | "objectSizeGreaterThan" | "objectSizeLessThan">, never>) | undefined;
enabled?: boolean | undefined;
expiration?: ({
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} & {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["expiration"], "$type" | "days" | "date" | "expiredObjectDeleteMarker">, never>) | undefined;
transitions?: ({
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] & ({
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
} & {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["transitions"][number], "$type" | "days" | "date" | "storageClass">, never>)[] & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["transitions"], "$type" | keyof {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[]>, never>) | undefined;
abortIncompleteMultipartUpload?: ({
daysAfterExpiration?: number | undefined;
} & {
daysAfterExpiration?: number | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["abortIncompleteMultipartUpload"], "$type" | "daysAfterExpiration">, never>) | undefined;
noncurrentExpiration?: ({
noncurrentDays?: number | undefined;
} & {
noncurrentDays?: number | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["noncurrentExpiration"], "$type" | "noncurrentDays">, never>) | undefined;
noncurrentTransitions?: ({
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] & ({
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
} & {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["noncurrentTransitions"][number], "$type" | "storageClass" | "noncurrentDays">, never>)[] & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number]["noncurrentTransitions"], "$type" | keyof {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[]>, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"][number], "$type" | "id" | "filter" | "enabled" | "expiration" | "transitions" | "abortIncompleteMultipartUpload" | "noncurrentExpiration" | "noncurrentTransitions">, never>)[] & Record<Exclude<keyof I["buckets"][number]["lifecycleRules"], "$type" | keyof {
id?: string | undefined;
filter?: {
prefix?: string | undefined;
objectSizeGreaterThan?: number | undefined;
objectSizeLessThan?: number | undefined;
} | undefined;
enabled?: boolean | undefined;
expiration?: {
days?: number | undefined;
date?: Date | undefined;
expiredObjectDeleteMarker?: boolean | undefined;
} | undefined;
transitions?: {
days?: number | undefined;
date?: Date | undefined;
storageClass?: string | undefined;
}[] | undefined;
abortIncompleteMultipartUpload?: {
daysAfterExpiration?: number | undefined;
} | undefined;
noncurrentExpiration?: {
noncurrentDays?: number | undefined;
} | undefined;
noncurrentTransitions?: {
storageClass?: string | undefined;
noncurrentDays?: number | undefined;
}[] | undefined;
}[]>, never>) | undefined;
objectLock?: ({
status?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_ObjectLockStatus | undefined;
defaultRetention?: {
mode?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_DefaultRetention_Mode | undefined;
days?: number | undefined;
years?: number | undefined;
} | undefined;
} & {
status?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_ObjectLockStatus | undefined;
defaultRetention?: ({
mode?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_DefaultRetention_Mode | undefined;
days?: number | undefined;
years?: number | undefined;
} & {
mode?: import("../../../../yandex/cloud/storage/v1/bucket").ObjectLock_DefaultRetention_Mode | undefined;
days?: number | undefined;
years?: number | undefined;
} & Record<Exclude<keyof I["buckets"][number]["objectLock"]["defaultRetention"], "$type" | "mode" | "days" | "years">, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number]["objectLock"], "$type" | "status" | "defaultRetention">, never>) | undefined;
encryption?: ({
rules?: {
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
}[] | undefined;
} & {
rules?: ({
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
}[] & ({
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
} & {
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
} & Record<Exclude<keyof I["buckets"][number]["encryption"]["rules"][number], "$type" | "kmsMasterKeyId" | "sseAlgorithm">, never>)[] & Record<Exclude<keyof I["buckets"][number]["encryption"]["rules"], "$type" | keyof {
kmsMasterKeyId?: string | undefined;
sseAlgorithm?: string | undefined;
}[]>, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number]["encryption"], "$type" | "rules">, never>) | undefined;
} & Record<Exclude<keyof I["buckets"][number], "$type" | "id" | "name" | "createdAt" | "folderId" | "maxSize" | "cors" | "tags" | "policy" | "defaultStorageClass" | "versioning" | "anonymousAccessFlags" | "acl" | "websiteSettings" | "lifecycleRules" | "objectLock" | "encryption">, never>)[] & Record<Exclude<keyof I["buckets"], "$type" | keyof {
id?: string | undefined;
name?: string | undefined;
createdAt?: Date | undefined;
folderId?: string | undefined;
maxSize?: number | undefined;
cors?: {
id?: string | undefined;
allowedMethods?: import("../../../../yandex/cloud/storage/v1/bucket").CorsRule_Method[] | undefined;
allowedHeaders?: string[] | undefined;
allowedOrigins?: string[] | undefined;
exposeHeaders?: string[] | undefined;
maxAgeSeconds?: number | undefined;
}[] | undefined;
tags?: {
value?: string | undefined;
key?: string | undefined;
}[] | undefined;
policy?: {
[x: string]: any;
[x: number]: any;
} | undefined;
defaultStorageClass?: string | undefined;
versioning?: Versioning | undefined;
anonymousAccessFlags?: {
list?: boolean | undefined;
read?: boolean | undefined;
configRead?: boolean | undefined;
}