@google-cloud/dns
Version:
Cloud DNS Client Library for Node.js
46 lines (45 loc) • 1.62 kB
TypeScript
/*!
* Copyright 2014 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Metadata, ServiceObject } from '@google-cloud/common';
import { Record } from './record';
import { Zone } from './zone';
export interface CreateChangeRequest {
add?: Record | Record[];
delete?: Record | Record[];
}
export type CreateChangeResponse = [Change, Metadata];
export interface CreateChangeCallback {
(err: Error | null, change?: Change | null, apiResponse?: Metadata): void;
}
/**
* @class
*
* @param {Zone} zone The parent zone object.
* @param {string} id ID of the change.
*
* @example
* const {DNS} = require('@google-cloud/dns');
* const dns = new DNS();
* const zone = dns.zone('zone-id');
* const change = zone.change('change-id');
*/
export declare class Change extends ServiceObject {
parent: Zone;
constructor(zone: Zone, id?: string);
create(config?: CreateChangeRequest): Promise<CreateChangeResponse>;
create(config: CreateChangeRequest, callback: CreateChangeCallback): void;
create(callback: CreateChangeCallback): void;
}