///
import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from '@grpc/grpc-js';
import _m0 from 'protobufjs/minimal';
import { PrivateVisibility, PublicVisibility, DnsZone, RecordSet } from '../../../../yandex/cloud/dns/v1/dns_zone';
import { FieldMask } from '../../../../google/protobuf/field_mask';
import { Operation } from '../../../../yandex/cloud/operation/operation';
import { ListAccessBindingsRequest, ListAccessBindingsResponse, SetAccessBindingsRequest, UpdateAccessBindingsRequest } from '../../../../yandex/cloud/access/access';
export declare const protobufPackage = "yandex.cloud.dns.v1";
export interface UpdateDnsZonePrivateNetworksRequest {
/** ID of the DNS zone which private networks will be updated */
dnsZoneId: string;
/** Network IDs to remove */
privateNetworkIdAdditions: string[];
/** Network IDs to add */
privateNetworkIdDeletions: string[];
}
export interface UpdateDnsZonePrivateNetworksMetadata {
/** ID of the DNS zone which private networks was updated */
dnsZoneId: string;
}
export interface GetDnsZoneRequest {
/**
* ID of the DNS zone to return.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
}
export interface ListDnsZonesRequest {
/**
* ID of the folder to list DNS zones in.
*
* To get the folder ID use a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
*/
folderId: string;
/**
* The maximum number of results per page to return. If the number of available
* results is larger than `page_size`, the service returns a [ListDnsZonesResponse.next_page_token]
* that can be used to get the next page of results in subsequent list requests.
*/
pageSize: number;
/**
* Page token. To get the next page of results, set `page_token` to the
* [ListDnsZonesResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
/**
* A filter expression that filters DNS zones listed in the response.
*
* The expression must specify:
* 1. The field name. Currently you can use filtering only on the [DnsZone.name] field.
* 2. An `=` operator.
* 3. The value in double quotes (`"`). Must be 3-63 characters long and match the regular expression `[a-z][-a-z0-9]{1,61}[a-z0-9]`.
* Example of a filter: `name=my-dns-zone`.
*/
filter: string;
}
export interface ListDnsZonesResponse {
/** List of DNS zones in the specified folder. */
dnsZones: DnsZone[];
/**
* Token for getting the next page of the list. If the number of results is greater than
* the specified [ListDnsZonesRequest.page_size], use `next_page_token` as the value
* for the [ListDnsZonesRequest.page_token] parameter in the next list request.
*
* Each subsequent page will have its own `next_page_token` to continue paging through the results.
*/
nextPageToken: string;
}
export interface CreateDnsZoneRequest {
/**
* ID of the folder to create DNS zones in.
*
* To get a folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request.
*/
folderId: string;
/**
* Name of the DNS zone.
* The name must be unique within the folder.
*/
name: string;
/** Description of the DNS zone. */
description: string;
/** DNS zone labels as `key:value` pairs. */
labels: {
[key: string]: string;
};
/** DNS zone suffix. */
zone: string;
/**
* Privately visible zone settings.
* At least one of two visibility fields must be set.
*/
privateVisibility?: PrivateVisibility;
/**
* Publicly visible zone settings.
* At least one of two visibility fields must be set.
*/
publicVisibility?: PublicVisibility;
/** Prevents accidental zone removal. */
deletionProtection: boolean;
}
export interface CreateDnsZoneRequest_LabelsEntry {
key: string;
value: string;
}
export interface CreateDnsZoneMetadata {
/** ID of the DNS zone that is being created. */
dnsZoneId: string;
}
export interface UpdateDnsZoneRequest {
/**
* ID of the DNS zone to update.
*
* To get the DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
/** Field mask specifying which fields of the DNS zone resource are going to be updated. */
updateMask?: FieldMask;
/**
* New name for the DNS zone.
* The name must be unique within the folder.
*/
name: string;
/** New description of the DNS zone. */
description: string;
/**
* DNS zone labels as `key:value` pairs.
*
* Existing set of labels is completely replaced by the provided set, so if you just want
* to add or remove a label:
* 1. Get the current set of labels with a [DnsZoneService.Get] request.
* 2. Add or remove a label in this set.
* 3. Send the new set in this field.
*/
labels: {
[key: string]: string;
};
/** Change network IDs for private visibility. */
privateVisibility?: PrivateVisibility;
/** Public visibility configuration. */
publicVisibility?: PublicVisibility;
/** Prevents accidental zone removal. */
deletionProtection: boolean;
}
export interface UpdateDnsZoneRequest_LabelsEntry {
key: string;
value: string;
}
export interface UpdateDnsZoneMetadata {
/** ID of the DNS zone that is being updated. */
dnsZoneId: string;
}
export interface DeleteDnsZoneRequest {
/**
* ID of the DNS zone to delete.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
}
export interface DeleteDnsZoneMetadata {
/** ID of the DNS zone that is being deleted. */
dnsZoneId: string;
}
export interface GetDnsZoneRecordSetRequest {
/**
* ID of the DNS zone to get record set from.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
/** Name of the record set. */
name: string;
/** Type of the record set. */
type: string;
}
export interface ListDnsZoneRecordSetsRequest {
/**
* ID of the DNS zone to list record sets in.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
/**
* The maximum number of results per page to return. If the number of available
* results is larger than `page_size`, the service returns a [ListDnsZoneRecordSetsResponse.next_page_token]
* that can be used to get the next page of results in subsequent list requests.
*/
pageSize: number;
/**
* Page token. To get the next page of results, set `page_token` to the
* [ListDnsZoneRecordSetsResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
/**
* A filter expression that filters record sets listed in the response. The expression consists of one or more conditions united by `AND` operator: ` [AND [<...> AND ]]`.
*
* Each condition has the form ``, where:
* 1. `` is the field name. Currently you can use filtering only on the [RecordSet.name] and [RecordSet.type] fields.
* 2. `` is a logical operator, one of `=`, `!=`, `IN`, `NOT IN`.
* 3. `` represents a value.
* 3.1. In case of single value condition (`=` or `!=`), the value is a string in double (`"`) or single (`'`) quotes. C-style escape sequences are supported (`\"` turns to `"`, `\'` to `'`, `\\` to backslash).
* 3.2. In case of a list of values condition (`IN` or `NOT IN`), the value is `(, , .., )`, where `` is a string in double (`"`) or single (`'`) quotes.
*
* Examples of a filter: `name="my-record-set"`, `type IN ("MX","A") AND name="works.on.my.machine."`.
*/
filter: string;
}
export interface ListDnsZoneRecordSetsResponse {
/** List of record sets in the specified DNS zone. */
recordSets: RecordSet[];
/**
* Token for getting the next page of the list. If the number of results is greater than
* the specified [ListDnsZoneRecordSetsRequest.page_size], use `next_page_token` as the value
* for the [ListDnsZoneRecordSetsRequest.page_token] parameter in the next list request.
*
* Each subsequent page will have its own `next_page_token` to continue paging through the results.
*/
nextPageToken: string;
}
export interface UpdateRecordSetsRequest {
/**
* ID of the DNS zone to update record sets in.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
/** List of record sets to delete. */
deletions: RecordSet[];
/** List of record sets to add. */
additions: RecordSet[];
}
export interface UpdateRecordSetsMetadata {
}
export interface UpsertRecordSetsRequest {
/**
* ID of the DNS zone to upsert record sets to.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
/** Delete only specified records from corresponding record sets. */
deletions: RecordSet[];
/** Entirely replace specified record sets. */
replacements: RecordSet[];
/** Replace specified records or add new ones if no such record sets exists. */
merges: RecordSet[];
}
export interface UpsertRecordSetsMetadata {
}
export interface RecordSetDiff {
/** List of record sets that were added */
additions: RecordSet[];
/** List of record sets that were deleted */
deletions: RecordSet[];
}
export interface ListDnsZoneOperationsRequest {
/**
* ID of the DNS zone to list operations for.
*
* To get a DNS zone ID, make a [DnsZoneService.List] request.
*/
dnsZoneId: string;
/**
* The maximum number of results per page to return. If the number of available
* results is larger than [page_size], the service returns a [ListDnsZoneOperationsResponse.next_page_token]
* that can be used to get the next page of results in subsequent list requests.
*/
pageSize: number;
/**
* Page token. To get the next page of results, set [page_token] to the
* [ListDnsZoneOperationsResponse.next_page_token] returned by a previous list request.
*/
pageToken: string;
/**
* A filter expression that filters DNS zones listed in the response.
*
* The expression must specify:
* 1. The field name. Currently you can use filtering only on the [DnsZone.name] field.
* 2. An `=` operator.
* 3. The value in double quotes (`"`). Must be 3-63 characters long and match the regular expression `[a-z][-a-z0-9]{1,61}[a-z0-9]`.
* Example of a filter: `name=my-dns-zone`.
*/
filter: string;
}
export interface ListDnsZoneOperationsResponse {
/** List of operations for the specified DNS zone. */
operations: Operation[];
/**
* Token for getting the next page of the list. If the number of results is greater than
* the specified [ListDnsZoneOperationsRequest.page_size], use `next_page_token` as the value
* for the [ListDnsZoneOperationsRequest.page_token] parameter in the next list request.
*
* Each subsequent page will have its own `next_page_token` to continue paging through the results.
*/
nextPageToken: string;
}
export declare const UpdateDnsZonePrivateNetworksRequest: {
encode(message: UpdateDnsZonePrivateNetworksRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDnsZonePrivateNetworksRequest;
fromJSON(object: any): UpdateDnsZonePrivateNetworksRequest;
toJSON(message: UpdateDnsZonePrivateNetworksRequest): unknown;
fromPartial, never>) | undefined;
privateNetworkIdDeletions?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>>(object: I): UpdateDnsZonePrivateNetworksRequest;
};
export declare const UpdateDnsZonePrivateNetworksMetadata: {
encode(message: UpdateDnsZonePrivateNetworksMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDnsZonePrivateNetworksMetadata;
fromJSON(object: any): UpdateDnsZonePrivateNetworksMetadata;
toJSON(message: UpdateDnsZonePrivateNetworksMetadata): unknown;
fromPartial, never>>(object: I): UpdateDnsZonePrivateNetworksMetadata;
};
export declare const GetDnsZoneRequest: {
encode(message: GetDnsZoneRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): GetDnsZoneRequest;
fromJSON(object: any): GetDnsZoneRequest;
toJSON(message: GetDnsZoneRequest): unknown;
fromPartial, never>>(object: I): GetDnsZoneRequest;
};
export declare const ListDnsZonesRequest: {
encode(message: ListDnsZonesRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListDnsZonesRequest;
fromJSON(object: any): ListDnsZonesRequest;
toJSON(message: ListDnsZonesRequest): unknown;
fromPartial, never>>(object: I): ListDnsZonesRequest;
};
export declare const ListDnsZonesResponse: {
encode(message: ListDnsZonesResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListDnsZonesResponse;
fromJSON(object: any): ListDnsZonesResponse;
toJSON(message: ListDnsZonesResponse): unknown;
fromPartial, never>) | undefined;
zone?: string | undefined;
privateVisibility?: ({
networkIds?: string[] | undefined;
} & {
networkIds?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>) | undefined;
publicVisibility?: ({} & {} & Record, never>) | undefined;
deletionProtection?: boolean | undefined;
} & Record, never>)[] & Record, never>) | undefined;
nextPageToken?: string | undefined;
} & Record, never>>(object: I): ListDnsZonesResponse;
};
export declare const CreateDnsZoneRequest: {
encode(message: CreateDnsZoneRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): CreateDnsZoneRequest;
fromJSON(object: any): CreateDnsZoneRequest;
toJSON(message: CreateDnsZoneRequest): unknown;
fromPartial, never>) | undefined;
zone?: string | undefined;
privateVisibility?: ({
networkIds?: string[] | undefined;
} & {
networkIds?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>) | undefined;
publicVisibility?: ({} & {} & Record, never>) | undefined;
deletionProtection?: boolean | undefined;
} & Record, never>>(object: I): CreateDnsZoneRequest;
};
export declare const CreateDnsZoneRequest_LabelsEntry: {
encode(message: CreateDnsZoneRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): CreateDnsZoneRequest_LabelsEntry;
fromJSON(object: any): CreateDnsZoneRequest_LabelsEntry;
toJSON(message: CreateDnsZoneRequest_LabelsEntry): unknown;
fromPartial, never>>(object: I): CreateDnsZoneRequest_LabelsEntry;
};
export declare const CreateDnsZoneMetadata: {
encode(message: CreateDnsZoneMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): CreateDnsZoneMetadata;
fromJSON(object: any): CreateDnsZoneMetadata;
toJSON(message: CreateDnsZoneMetadata): unknown;
fromPartial, never>>(object: I): CreateDnsZoneMetadata;
};
export declare const UpdateDnsZoneRequest: {
encode(message: UpdateDnsZoneRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDnsZoneRequest;
fromJSON(object: any): UpdateDnsZoneRequest;
toJSON(message: UpdateDnsZoneRequest): unknown;
fromPartial, never>) | undefined;
} & Record, never>) | undefined;
name?: string | undefined;
description?: string | undefined;
labels?: ({
[x: string]: string | undefined;
} & {
[x: string]: string | undefined;
} & Record, never>) | undefined;
privateVisibility?: ({
networkIds?: string[] | undefined;
} & {
networkIds?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>) | undefined;
publicVisibility?: ({} & {} & Record, never>) | undefined;
deletionProtection?: boolean | undefined;
} & Record, never>>(object: I): UpdateDnsZoneRequest;
};
export declare const UpdateDnsZoneRequest_LabelsEntry: {
encode(message: UpdateDnsZoneRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDnsZoneRequest_LabelsEntry;
fromJSON(object: any): UpdateDnsZoneRequest_LabelsEntry;
toJSON(message: UpdateDnsZoneRequest_LabelsEntry): unknown;
fromPartial, never>>(object: I): UpdateDnsZoneRequest_LabelsEntry;
};
export declare const UpdateDnsZoneMetadata: {
encode(message: UpdateDnsZoneMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateDnsZoneMetadata;
fromJSON(object: any): UpdateDnsZoneMetadata;
toJSON(message: UpdateDnsZoneMetadata): unknown;
fromPartial, never>>(object: I): UpdateDnsZoneMetadata;
};
export declare const DeleteDnsZoneRequest: {
encode(message: DeleteDnsZoneRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): DeleteDnsZoneRequest;
fromJSON(object: any): DeleteDnsZoneRequest;
toJSON(message: DeleteDnsZoneRequest): unknown;
fromPartial, never>>(object: I): DeleteDnsZoneRequest;
};
export declare const DeleteDnsZoneMetadata: {
encode(message: DeleteDnsZoneMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): DeleteDnsZoneMetadata;
fromJSON(object: any): DeleteDnsZoneMetadata;
toJSON(message: DeleteDnsZoneMetadata): unknown;
fromPartial, never>>(object: I): DeleteDnsZoneMetadata;
};
export declare const GetDnsZoneRecordSetRequest: {
encode(message: GetDnsZoneRecordSetRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): GetDnsZoneRecordSetRequest;
fromJSON(object: any): GetDnsZoneRecordSetRequest;
toJSON(message: GetDnsZoneRecordSetRequest): unknown;
fromPartial, never>>(object: I): GetDnsZoneRecordSetRequest;
};
export declare const ListDnsZoneRecordSetsRequest: {
encode(message: ListDnsZoneRecordSetsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListDnsZoneRecordSetsRequest;
fromJSON(object: any): ListDnsZoneRecordSetsRequest;
toJSON(message: ListDnsZoneRecordSetsRequest): unknown;
fromPartial, never>>(object: I): ListDnsZoneRecordSetsRequest;
};
export declare const ListDnsZoneRecordSetsResponse: {
encode(message: ListDnsZoneRecordSetsResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListDnsZoneRecordSetsResponse;
fromJSON(object: any): ListDnsZoneRecordSetsResponse;
toJSON(message: ListDnsZoneRecordSetsResponse): unknown;
fromPartial, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
nextPageToken?: string | undefined;
} & Record, never>>(object: I): ListDnsZoneRecordSetsResponse;
};
export declare const UpdateRecordSetsRequest: {
encode(message: UpdateRecordSetsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateRecordSetsRequest;
fromJSON(object: any): UpdateRecordSetsRequest;
toJSON(message: UpdateRecordSetsRequest): unknown;
fromPartial, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
additions?: ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
}[] & ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
} & {
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
} & Record, never>>(object: I): UpdateRecordSetsRequest;
};
export declare const UpdateRecordSetsMetadata: {
encode(_: UpdateRecordSetsMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpdateRecordSetsMetadata;
fromJSON(_: any): UpdateRecordSetsMetadata;
toJSON(_: UpdateRecordSetsMetadata): unknown;
fromPartial, never>>(_: I): UpdateRecordSetsMetadata;
};
export declare const UpsertRecordSetsRequest: {
encode(message: UpsertRecordSetsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpsertRecordSetsRequest;
fromJSON(object: any): UpsertRecordSetsRequest;
toJSON(message: UpsertRecordSetsRequest): unknown;
fromPartial, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
replacements?: ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
}[] & ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
} & {
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
merges?: ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
}[] & ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
} & {
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
} & Record, never>>(object: I): UpsertRecordSetsRequest;
};
export declare const UpsertRecordSetsMetadata: {
encode(_: UpsertRecordSetsMetadata, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): UpsertRecordSetsMetadata;
fromJSON(_: any): UpsertRecordSetsMetadata;
toJSON(_: UpsertRecordSetsMetadata): unknown;
fromPartial, never>>(_: I): UpsertRecordSetsMetadata;
};
export declare const RecordSetDiff: {
encode(message: RecordSetDiff, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): RecordSetDiff;
fromJSON(object: any): RecordSetDiff;
toJSON(message: RecordSetDiff): unknown;
fromPartial, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
deletions?: ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
}[] & ({
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: string[] | undefined;
} & {
name?: string | undefined;
type?: string | undefined;
ttl?: number | undefined;
data?: (string[] & string[] & Record, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
} & Record, never>>(object: I): RecordSetDiff;
};
export declare const ListDnsZoneOperationsRequest: {
encode(message: ListDnsZoneOperationsRequest, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListDnsZoneOperationsRequest;
fromJSON(object: any): ListDnsZoneOperationsRequest;
toJSON(message: ListDnsZoneOperationsRequest): unknown;
fromPartial, never>>(object: I): ListDnsZoneOperationsRequest;
};
export declare const ListDnsZoneOperationsResponse: {
encode(message: ListDnsZoneOperationsResponse, writer?: _m0.Writer): _m0.Writer;
decode(input: _m0.Reader | Uint8Array, length?: number): ListDnsZoneOperationsResponse;
fromJSON(object: any): ListDnsZoneOperationsResponse;
toJSON(message: ListDnsZoneOperationsResponse): unknown;
fromPartial, never>) | undefined;
error?: ({
code?: number | undefined;
message?: string | undefined;
details?: {
typeUrl?: string | undefined;
value?: Buffer | undefined;
}[] | undefined;
} & {
code?: number | undefined;
message?: string | undefined;
details?: ({
typeUrl?: string | undefined;
value?: Buffer | undefined;
}[] & ({
typeUrl?: string | undefined;
value?: Buffer | undefined;
} & {
typeUrl?: string | undefined;
value?: Buffer | undefined;
} & Record, never>)[] & Record, never>) | undefined;
} & Record, never>) | undefined;
response?: ({
typeUrl?: string | undefined;
value?: Buffer | undefined;
} & {
typeUrl?: string | undefined;
value?: Buffer | undefined;
} & Record, never>) | undefined;
} & Record, never>)[] & Record, never>) | undefined;
nextPageToken?: string | undefined;
} & Record, never>>(object: I): ListDnsZoneOperationsResponse;
};
/** A set of methods for managing DNS zones. */
export declare const DnsZoneServiceService: {
/**
* Returns the specified DNS zone.
*
* To get the list of all available DNS zones, make a [List] request.
*/
readonly get: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/Get";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: GetDnsZoneRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => GetDnsZoneRequest;
readonly responseSerialize: (value: DnsZone) => Buffer;
readonly responseDeserialize: (value: Buffer) => DnsZone;
};
/** Retrieves the list of DNS zones in the specified folder. */
readonly list: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/List";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: ListDnsZonesRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => ListDnsZonesRequest;
readonly responseSerialize: (value: ListDnsZonesResponse) => Buffer;
readonly responseDeserialize: (value: Buffer) => ListDnsZonesResponse;
};
/** Creates a DNS zone in the specified folder. */
readonly create: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/Create";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: CreateDnsZoneRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => CreateDnsZoneRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Updates the specified DNS zone. */
readonly update: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/Update";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: UpdateDnsZoneRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => UpdateDnsZoneRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Deletes the specified DNS zone. */
readonly delete: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/Delete";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: DeleteDnsZoneRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => DeleteDnsZoneRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Returns the specified record set. */
readonly getRecordSet: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/GetRecordSet";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: GetDnsZoneRecordSetRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => GetDnsZoneRecordSetRequest;
readonly responseSerialize: (value: RecordSet) => Buffer;
readonly responseDeserialize: (value: Buffer) => RecordSet;
};
/** Retrieves the list of record sets in the specified folder. */
readonly listRecordSets: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/ListRecordSets";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: ListDnsZoneRecordSetsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => ListDnsZoneRecordSetsRequest;
readonly responseSerialize: (value: ListDnsZoneRecordSetsResponse) => Buffer;
readonly responseDeserialize: (value: Buffer) => ListDnsZoneRecordSetsResponse;
};
/**
* Method with strict control for changing zone state. Returns error when:
* 1. Deleted record is not found.
* 2. Found record with matched type and name but different TTL or value.
* 3. Attempted to add record with existing name and type.
* Deletions happen first. If a record with the same name and type exists in both lists,
* then the existing record will be deleted, and a new one added.
*/
readonly updateRecordSets: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/UpdateRecordSets";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: UpdateRecordSetsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => UpdateRecordSetsRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/**
* Method without strict control for changing zone state. Nothing happens if deleted record doesn't exist.
* Deletes records that match all specified fields which allows to delete only specified records from a record set.
*/
readonly upsertRecordSets: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/UpsertRecordSets";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: UpsertRecordSetsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => UpsertRecordSetsRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Lists operations for the specified DNS zone. */
readonly listOperations: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/ListOperations";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: ListDnsZoneOperationsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => ListDnsZoneOperationsRequest;
readonly responseSerialize: (value: ListDnsZoneOperationsResponse) => Buffer;
readonly responseDeserialize: (value: Buffer) => ListDnsZoneOperationsResponse;
};
/** Lists existing access bindings for the specified DNS zone. */
readonly listAccessBindings: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/ListAccessBindings";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: ListAccessBindingsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => ListAccessBindingsRequest;
readonly responseSerialize: (value: ListAccessBindingsResponse) => Buffer;
readonly responseDeserialize: (value: Buffer) => ListAccessBindingsResponse;
};
/** Sets access bindings for the specified DNS zone. */
readonly setAccessBindings: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/SetAccessBindings";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: SetAccessBindingsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => SetAccessBindingsRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Updates access bindings for the specified DNS zone. */
readonly updateAccessBindings: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/UpdateAccessBindings";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: UpdateAccessBindingsRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => UpdateAccessBindingsRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
/** Atomically updates zone private networks */
readonly updatePrivateNetworks: {
readonly path: "/yandex.cloud.dns.v1.DnsZoneService/UpdatePrivateNetworks";
readonly requestStream: false;
readonly responseStream: false;
readonly requestSerialize: (value: UpdateDnsZonePrivateNetworksRequest) => Buffer;
readonly requestDeserialize: (value: Buffer) => UpdateDnsZonePrivateNetworksRequest;
readonly responseSerialize: (value: Operation) => Buffer;
readonly responseDeserialize: (value: Buffer) => Operation;
};
};
export interface DnsZoneServiceServer extends UntypedServiceImplementation {
/**
* Returns the specified DNS zone.
*
* To get the list of all available DNS zones, make a [List] request.
*/
get: handleUnaryCall;
/** Retrieves the list of DNS zones in the specified folder. */
list: handleUnaryCall;
/** Creates a DNS zone in the specified folder. */
create: handleUnaryCall;
/** Updates the specified DNS zone. */
update: handleUnaryCall;
/** Deletes the specified DNS zone. */
delete: handleUnaryCall;
/** Returns the specified record set. */
getRecordSet: handleUnaryCall;
/** Retrieves the list of record sets in the specified folder. */
listRecordSets: handleUnaryCall;
/**
* Method with strict control for changing zone state. Returns error when:
* 1. Deleted record is not found.
* 2. Found record with matched type and name but different TTL or value.
* 3. Attempted to add record with existing name and type.
* Deletions happen first. If a record with the same name and type exists in both lists,
* then the existing record will be deleted, and a new one added.
*/
updateRecordSets: handleUnaryCall;
/**
* Method without strict control for changing zone state. Nothing happens if deleted record doesn't exist.
* Deletes records that match all specified fields which allows to delete only specified records from a record set.
*/
upsertRecordSets: handleUnaryCall;
/** Lists operations for the specified DNS zone. */
listOperations: handleUnaryCall;
/** Lists existing access bindings for the specified DNS zone. */
listAccessBindings: handleUnaryCall;
/** Sets access bindings for the specified DNS zone. */
setAccessBindings: handleUnaryCall;
/** Updates access bindings for the specified DNS zone. */
updateAccessBindings: handleUnaryCall;
/** Atomically updates zone private networks */
updatePrivateNetworks: handleUnaryCall;
}
export interface DnsZoneServiceClient extends Client {
/**
* Returns the specified DNS zone.
*
* To get the list of all available DNS zones, make a [List] request.
*/
get(request: GetDnsZoneRequest, callback: (error: ServiceError | null, response: DnsZone) => void): ClientUnaryCall;
get(request: GetDnsZoneRequest, metadata: Metadata, callback: (error: ServiceError | null, response: DnsZone) => void): ClientUnaryCall;
get(request: GetDnsZoneRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: DnsZone) => void): ClientUnaryCall;
/** Retrieves the list of DNS zones in the specified folder. */
list(request: ListDnsZonesRequest, callback: (error: ServiceError | null, response: ListDnsZonesResponse) => void): ClientUnaryCall;
list(request: ListDnsZonesRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListDnsZonesResponse) => void): ClientUnaryCall;
list(request: ListDnsZonesRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListDnsZonesResponse) => void): ClientUnaryCall;
/** Creates a DNS zone in the specified folder. */
create(request: CreateDnsZoneRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
create(request: CreateDnsZoneRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
create(request: CreateDnsZoneRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Updates the specified DNS zone. */
update(request: UpdateDnsZoneRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
update(request: UpdateDnsZoneRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
update(request: UpdateDnsZoneRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Deletes the specified DNS zone. */
delete(request: DeleteDnsZoneRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
delete(request: DeleteDnsZoneRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
delete(request: DeleteDnsZoneRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Returns the specified record set. */
getRecordSet(request: GetDnsZoneRecordSetRequest, callback: (error: ServiceError | null, response: RecordSet) => void): ClientUnaryCall;
getRecordSet(request: GetDnsZoneRecordSetRequest, metadata: Metadata, callback: (error: ServiceError | null, response: RecordSet) => void): ClientUnaryCall;
getRecordSet(request: GetDnsZoneRecordSetRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: RecordSet) => void): ClientUnaryCall;
/** Retrieves the list of record sets in the specified folder. */
listRecordSets(request: ListDnsZoneRecordSetsRequest, callback: (error: ServiceError | null, response: ListDnsZoneRecordSetsResponse) => void): ClientUnaryCall;
listRecordSets(request: ListDnsZoneRecordSetsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListDnsZoneRecordSetsResponse) => void): ClientUnaryCall;
listRecordSets(request: ListDnsZoneRecordSetsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListDnsZoneRecordSetsResponse) => void): ClientUnaryCall;
/**
* Method with strict control for changing zone state. Returns error when:
* 1. Deleted record is not found.
* 2. Found record with matched type and name but different TTL or value.
* 3. Attempted to add record with existing name and type.
* Deletions happen first. If a record with the same name and type exists in both lists,
* then the existing record will be deleted, and a new one added.
*/
updateRecordSets(request: UpdateRecordSetsRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
updateRecordSets(request: UpdateRecordSetsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
updateRecordSets(request: UpdateRecordSetsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/**
* Method without strict control for changing zone state. Nothing happens if deleted record doesn't exist.
* Deletes records that match all specified fields which allows to delete only specified records from a record set.
*/
upsertRecordSets(request: UpsertRecordSetsRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
upsertRecordSets(request: UpsertRecordSetsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
upsertRecordSets(request: UpsertRecordSetsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Lists operations for the specified DNS zone. */
listOperations(request: ListDnsZoneOperationsRequest, callback: (error: ServiceError | null, response: ListDnsZoneOperationsResponse) => void): ClientUnaryCall;
listOperations(request: ListDnsZoneOperationsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListDnsZoneOperationsResponse) => void): ClientUnaryCall;
listOperations(request: ListDnsZoneOperationsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListDnsZoneOperationsResponse) => void): ClientUnaryCall;
/** Lists existing access bindings for the specified DNS zone. */
listAccessBindings(request: ListAccessBindingsRequest, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall;
listAccessBindings(request: ListAccessBindingsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall;
listAccessBindings(request: ListAccessBindingsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListAccessBindingsResponse) => void): ClientUnaryCall;
/** Sets access bindings for the specified DNS zone. */
setAccessBindings(request: SetAccessBindingsRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
setAccessBindings(request: SetAccessBindingsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
setAccessBindings(request: SetAccessBindingsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Updates access bindings for the specified DNS zone. */
updateAccessBindings(request: UpdateAccessBindingsRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
updateAccessBindings(request: UpdateAccessBindingsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
updateAccessBindings(request: UpdateAccessBindingsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
/** Atomically updates zone private networks */
updatePrivateNetworks(request: UpdateDnsZonePrivateNetworksRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
updatePrivateNetworks(request: UpdateDnsZonePrivateNetworksRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
updatePrivateNetworks(request: UpdateDnsZonePrivateNetworksRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall;
}
export declare const DnsZoneServiceClient: {
new (address: string, credentials: ChannelCredentials, options?: Partial): DnsZoneServiceClient;
service: typeof DnsZoneServiceService;
};
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