import { unknownFieldsSymbol } from "../../runtime/protos/index.js"; import type { MessageFns, EnumInstance, EnumClass } from "../../runtime/protos/index.js"; import { customJson } from "../../runtime/util/logging.js"; /** * Represents the `nebius.ResourceBehavior` protobuf enum. */ export type ResourceBehavior = EnumInstance<"UNRECOGNIZED" | "RESOURCE_BEHAVIOR_UNSPECIFIED" | "MOVABLE" | "UNNAMED" | "IMMUTABLE_NAME">; /** Defines the static values of {@link ResourceBehavior}. */ export interface ResourceBehaviorValueMembers { /** * The behavior of the resource is unspecified. * Avoid using this default value. * */ readonly RESOURCE_BEHAVIOR_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "RESOURCE_BEHAVIOR_UNSPECIFIED" | "MOVABLE" | "UNNAMED" | "IMMUTABLE_NAME">; /** * Indicates that the resource can be moved to another parent, typically an * IAM container, though not necessarily limited to this. * This behavior suggests that the `metadata.parent_id` attribute could be modified. * */ readonly MOVABLE: EnumInstance<"UNRECOGNIZED" | "RESOURCE_BEHAVIOR_UNSPECIFIED" | "MOVABLE" | "UNNAMED" | "IMMUTABLE_NAME">; /** * Indicates that the resource name can be unspecified or does not follow * uniqueness requirement within parent_id and resource type. * */ readonly UNNAMED: EnumInstance<"UNRECOGNIZED" | "RESOURCE_BEHAVIOR_UNSPECIFIED" | "MOVABLE" | "UNNAMED" | "IMMUTABLE_NAME">; /** * Indicates that the resource is named, and the name cannot be changed after * it is created. It is strongly recommended to do srvices with renaming * capability, as the guidelines suggest. * */ readonly IMMUTABLE_NAME: EnumInstance<"UNRECOGNIZED" | "RESOURCE_BEHAVIOR_UNSPECIFIED" | "MOVABLE" | "UNNAMED" | "IMMUTABLE_NAME">; } /** Defines the runtime API for {@link ResourceBehavior}. */ export type ResourceBehaviorClass = EnumClass<"UNRECOGNIZED" | "RESOURCE_BEHAVIOR_UNSPECIFIED" | "MOVABLE" | "UNNAMED" | "IMMUTABLE_NAME"> & ResourceBehaviorValueMembers; /** Converts and creates {@link ResourceBehavior} values. */ export declare const ResourceBehavior: ResourceBehaviorClass; /** * Represents the `nebius.FieldBehavior` protobuf enum. */ export type FieldBehavior = EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** Defines the static values of {@link FieldBehavior}. */ export interface FieldBehaviorValueMembers { /** * Represents the `FIELD_BEHAVIOR_UNSPECIFIED` protobuf enum value. */ readonly FIELD_BEHAVIOR_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * This indicates that the field can't be changed during a resource update. * Changing the field value will cause an `INVALID_ARGUMENT` error. * For message fields, this applies to the field itself. Nested immutable * fields do not make a mutable parent message immutable, and such a parent * message may still be cleared. * Resource recreate requires a change of the field value. * */ readonly IMMUTABLE: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * Indicates field is a resource ID, so it MUST be present on a resource * update, but MUST NOT be set on create. * Otherwise, RPC will fail with the `INVALID_ARGUMENT` error * */ readonly IDENTIFIER: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * Indicates field is not present in output. * */ readonly INPUT_ONLY: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * Indicates field can't be set on create or changed on update. * Otherwise, RPC will fail with the `INVALID_ARGUMENT` error * */ readonly OUTPUT_ONLY: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * Indicates that an empty message and a null have different semantics. * Usually, that field is a feature spec message: its empty message enables * that feature, and null disables it. Such a message is different from `bool` * because it already has some feature parameters, or they can be added later * in a backward-compatible way. * IMPORTANT: if the message itself is recursive, this behavior is forced. * */ readonly MEANINGFUL_EMPTY_VALUE: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * Indicates that an empty (default) value will be filled by the server. * Usually, that field is a feature spec value, which by default is computed. * Values marked with this annotation won't raise error if they are not set * and the returned value is not equal to protobuf default. * * IMPORTANT: * Updating this value from explicit to default may not lead to Update call in * some tools (eg Terraform). * Compound values (messages, lists and maps) may result in unpredictable * updates (see examples in guidelines). * */ readonly NON_EMPTY_DEFAULT: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; /** * The same as `OUTPUT_ONLY` * */ readonly PUBLIC_OUTPUT_ONLY: EnumInstance<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY">; } /** Defines the runtime API for {@link FieldBehavior}. */ export type FieldBehaviorClass = EnumClass<"UNRECOGNIZED" | "FIELD_BEHAVIOR_UNSPECIFIED" | "IMMUTABLE" | "IDENTIFIER" | "INPUT_ONLY" | "OUTPUT_ONLY" | "MEANINGFUL_EMPTY_VALUE" | "NON_EMPTY_DEFAULT" | "PUBLIC_OUTPUT_ONLY"> & FieldBehaviorValueMembers; /** Converts and creates {@link FieldBehavior} values. */ export declare const FieldBehavior: FieldBehaviorClass; /** * MethodBehavior describes special behaviors of a method that affect * code generation and tooling. * */ export type MethodBehavior = EnumInstance<"UNRECOGNIZED" | "METHOD_BEHAVIOR_UNSPECIFIED" | "METHOD_UPDATER" | "METHOD_PAGINATED" | "METHOD_WITHOUT_GET">; /** Defines the static values of {@link MethodBehavior}. */ export interface MethodBehaviorValueMembers { /** * Indicates that the method behavior is default and is not specified. * For instance, an Update method will lose its update semantics if this value * is set. * Does not mean anything if set along with other values. * */ readonly METHOD_BEHAVIOR_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "METHOD_BEHAVIOR_UNSPECIFIED" | "METHOD_UPDATER" | "METHOD_PAGINATED" | "METHOD_WITHOUT_GET">; /** * Indicates that the method is used to update a resource or a number of * resources, therefore it requires a reset mask to unset fields. * This will enable SDKs to generate the reset mask on request, as well as the * gateway to pass and sanitize it. The CLI will add flags to set partial or * full updates and custom reset masks. * */ readonly METHOD_UPDATER: EnumInstance<"UNRECOGNIZED" | "METHOD_BEHAVIOR_UNSPECIFIED" | "METHOD_UPDATER" | "METHOD_PAGINATED" | "METHOD_WITHOUT_GET">; /** * Indicates that the method is used to list something, and supports * pagination. * */ readonly METHOD_PAGINATED: EnumInstance<"UNRECOGNIZED" | "METHOD_BEHAVIOR_UNSPECIFIED" | "METHOD_UPDATER" | "METHOD_PAGINATED" | "METHOD_WITHOUT_GET">; /** * Indicates that the method will create an operation, which doesn't have a * gettable resource after its completion, and therefore must not call a `get` * method. For instance, it can be used for long-running operations that * don't return any resource, or for resource deletion operations. * */ readonly METHOD_WITHOUT_GET: EnumInstance<"UNRECOGNIZED" | "METHOD_BEHAVIOR_UNSPECIFIED" | "METHOD_UPDATER" | "METHOD_PAGINATED" | "METHOD_WITHOUT_GET">; } /** Defines the runtime API for {@link MethodBehavior}. */ export type MethodBehaviorClass = EnumClass<"UNRECOGNIZED" | "METHOD_BEHAVIOR_UNSPECIFIED" | "METHOD_UPDATER" | "METHOD_PAGINATED" | "METHOD_WITHOUT_GET"> & MethodBehaviorValueMembers; /** Converts and creates {@link MethodBehavior} values. */ export declare const MethodBehavior: MethodBehaviorClass; /** Represents the `nebius.ServicePySDKSettings` protobuf message. */ export interface ServicePySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.ServicePySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link ServicePySDKSettings} messages. */ export declare const ServicePySDKSettings: MessageFns; /** Represents the `nebius.MethodPySDKSettings` protobuf message. */ export interface MethodPySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.MethodPySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link MethodPySDKSettings} messages. */ export declare const MethodPySDKSettings: MessageFns; /** Represents the `nebius.FieldPySDKSettings` protobuf message. */ export interface FieldPySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.FieldPySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link FieldPySDKSettings} messages. */ export declare const FieldPySDKSettings: MessageFns; /** Represents the `nebius.MessagePySDKSettings` protobuf message. */ export interface MessagePySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.MessagePySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link MessagePySDKSettings} messages. */ export declare const MessagePySDKSettings: MessageFns; /** Represents the `nebius.OneofPySDKSettings` protobuf message. */ export interface OneofPySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.OneofPySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link OneofPySDKSettings} messages. */ export declare const OneofPySDKSettings: MessageFns; /** Represents the `nebius.EnumPySDKSettings` protobuf message. */ export interface EnumPySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.EnumPySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link EnumPySDKSettings} messages. */ export declare const EnumPySDKSettings: MessageFns; /** Represents the `nebius.EnumValuePySDKSettings` protobuf message. */ export interface EnumValuePySDKSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.EnumValuePySDKSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `name` protobuf field. */ name: string; } /** Encodes, decodes, converts, and creates {@link EnumValuePySDKSettings} messages. */ export declare const EnumValuePySDKSettings: MessageFns; /** Represents the `nebius.DeprecationDetails` protobuf message. */ export interface DeprecationDetails { /** Contains the fully qualified protobuf type name. */ $type: "nebius.DeprecationDetails"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * The date when this method, service, message or field will stop working (format: YYYY-MM-DD) * */ effectiveAt: string; /** * A description to help users understand the reason for deprecation and suggest alternatives. * By default, this message will be shown in the CLI, Terraform, and SDKs as is. * */ description: string; /** * Override base description for CLI, specify possible alternative method * Example: "Please use the 'iam v2 access-key' command instead. All existing keys remain accessible through the new command." * */ descriptionCli: string; } /** Encodes, decodes, converts, and creates {@link DeprecationDetails} messages. */ export declare const DeprecationDetails: MessageFns; /** Represents the `nebius.NIDFieldSettings` protobuf message. */ export interface NIDFieldSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.NIDFieldSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Fields annotated with this option are treated as NIDs. * `resource` lists allowed NID resource types (prefixes). Leave empty or set to `*` to accept any type. * Validation only produces warnings. * */ resource: string[]; /** * For metadata fields, `parent_resource` lists allowed parent resource types for `metadata.parent_id`. * Leave empty or set to `*` to allow any type. Validation only produces warnings. * Typically set on the resource message; request-level overrides are supported. * */ parentResource: string[]; } /** Encodes, decodes, converts, and creates {@link NIDFieldSettings} messages. */ export declare const NIDFieldSettings: MessageFns; /** * SubfieldSettings describes overrides for some settings for subfields of a * field. Overrides are applied to fields in order of appearance, so the first * matching override is applied, and the rest are ignored. * * Example: * ```protobuf * message MyMessage { * string field1 = 1; * } * message MyMessage2 { * MyMessage field2 = 1 [(subfield_settings) = { field_path: "field1", is_required: true }]; * } * ``` * In this example, `field1` in `MyMessage2` is required, even if it is not * required in `MyMessage`. * The following example will override the setting again: * ```protobuf * service MyService { * rpc MyMethod(MyMessage2) returns (MyMessage2) { * option (method_behavior) = METHOD_UPDATER; * option (request_fields) = { field_path: "field2.field1", is_required: false }; * } * } * ``` * In this example, `field1` in `MyMessage2` is not required for the `MyMethod`, * even if it is required in `MyMessage2`. * */ export interface SubfieldSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.SubfieldSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Subfield path in the message, for example `metadata.parent_id` or `metadata.name`. * Must be a valid SelectMask. * May match several fields, if necessary. For example, `some.*.subfield` or * `some.(subfield,another_field)`. * */ fieldPath: string; /** * For fields annotated with this option, values are treated as NIDs and * warnings are emitted when they are not valid. These warnings are separate from server-side validation. * */ nid?: NIDFieldSettings | undefined; /** * Mark a field as required, even if it is not required in the message it contains. * Unlike cel expressions, this setting can be reflected in tools documentation and * help messages. * */ isRequired?: boolean | undefined; } /** Encodes, decodes, converts, and creates {@link SubfieldSettings} messages. */ export declare const SubfieldSettings: MessageFns; import "../google/protobuf/index.js"; declare module '../google/protobuf/index.js' { interface FileOptions { fileDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface ServiceOptions { apiServiceName?: any; } } declare module '../google/protobuf/index.js' { interface ServiceOptions { serviceDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface ServiceOptions { servicePySdk?: ServicePySDKSettings; } } declare module '../google/protobuf/index.js' { interface MethodOptions { methodDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface MethodOptions { methodPySdk?: MethodPySDKSettings; } } declare module '../google/protobuf/index.js' { interface MethodOptions { methodBehavior?: MethodBehavior[]; } } declare module '../google/protobuf/index.js' { interface MethodOptions { requestFields?: SubfieldSettings[]; } } declare module '../google/protobuf/index.js' { interface MessageOptions { resourceBehavior?: ResourceBehavior[]; } } declare module '../google/protobuf/index.js' { interface MessageOptions { messageDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface MessageOptions { messagePySdk?: MessagePySDKSettings; } } declare module '../google/protobuf/index.js' { interface FieldOptions { fieldBehavior?: FieldBehavior[]; } } declare module '../google/protobuf/index.js' { interface FieldOptions { sensitive?: any; } } declare module '../google/protobuf/index.js' { interface FieldOptions { credentials?: any; } } declare module '../google/protobuf/index.js' { interface FieldOptions { fieldDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface FieldOptions { fieldPySdk?: FieldPySDKSettings; } } declare module '../google/protobuf/index.js' { interface FieldOptions { nid?: NIDFieldSettings; } } declare module '../google/protobuf/index.js' { interface FieldOptions { subfieldSettings?: SubfieldSettings[]; } } declare module '../google/protobuf/index.js' { interface OneofOptions { oneofBehavior?: FieldBehavior[]; } } declare module '../google/protobuf/index.js' { interface OneofOptions { oneofPySdk?: OneofPySDKSettings; } } declare module '../google/protobuf/index.js' { interface EnumOptions { enumPySdk?: EnumPySDKSettings; } } declare module '../google/protobuf/index.js' { interface EnumOptions { enumDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface EnumValueOptions { enumValueDeprecationDetails?: DeprecationDetails; } } declare module '../google/protobuf/index.js' { interface EnumValueOptions { enumValuePySdk?: EnumValuePySDKSettings; } } //# sourceMappingURL=index.d.ts.map