UNPKG

googleapis

Version:
248 lines (247 loc) 10.2 kB
/** * Copyright 2015 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 { AxiosPromise } from 'axios'; import { GoogleApis } from '../..'; import { BodyResponseCallback, GlobalOptions, MethodOptions } from '../../lib/api'; /** * Cloud OS Login API * * Manages OS login configuration for Google account users. * * @example * const google = require('googleapis'); * const oslogin = google.oslogin('v1alpha'); * * @namespace oslogin * @type {Function} * @version v1alpha * @variation v1alpha * @param {object=} options Options for Oslogin */ export declare class Oslogin { _options: GlobalOptions; google: GoogleApis; root: this; users: Resource$Users; constructor(options: GlobalOptions, google: GoogleApis); getRoot(): this; } /** * A generic empty message that you can re-use to avoid defining duplicated * empty messages in your APIs. A typical example is to use it as the request or * the response type of an API method. For instance: service Foo { rpc * Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON * representation for `Empty` is empty JSON object `{}`. */ export interface Schema$Empty { } /** * A response message for importing an SSH public key. */ export interface Schema$ImportSshPublicKeyResponse { /** * The login profile information for the user. */ loginProfile: Schema$LoginProfile; } /** * The user profile information used for logging in to a virtual machine on * Google Compute Engine. */ export interface Schema$LoginProfile { /** * A unique user ID. */ name: string; /** * The list of POSIX accounts associated with the user. */ posixAccounts: Schema$PosixAccount[]; /** * A map from SSH public key fingerprint to the associated key object. */ sshPublicKeys: any; } /** * The POSIX account information associated with a Google account. */ export interface Schema$PosixAccount { /** * Output only. A POSIX account identifier. */ accountId: string; /** * The GECOS (user information) entry for this account. */ gecos: string; /** * The default group ID. */ gid: string; /** * The path to the home directory for this account. */ homeDirectory: string; /** * Only one POSIX account can be marked as primary. */ primary: boolean; /** * The path to the logic shell for this account. */ shell: string; /** * System identifier for which account the username or uid applies to. By * default, the empty value is used. */ systemId: string; /** * The user ID. */ uid: string; /** * The username of the POSIX account. */ username: string; } /** * The SSH public key information associated with a Google account. */ export interface Schema$SshPublicKey { /** * An expiration time in microseconds since epoch. */ expirationTimeUsec: string; /** * Output only. The SHA-256 fingerprint of the SSH public key. */ fingerprint: string; /** * Public key text in SSH format, defined by &lt;a * href=&quot;https://www.ietf.org/rfc/rfc4253.txt&quot; * target=&quot;_blank&quot;&gt;RFC4253&lt;/a&gt; section 6.6. */ key: string; } export declare class Resource$Users { root: Oslogin; projects: Resource$Users$Projects; sshPublicKeys: Resource$Users$Sshpublickeys; constructor(root: Oslogin); getRoot(): Oslogin; /** * oslogin.users.getLoginProfile * @desc Retrieves the profile information used for logging in to a virtual * machine on Google Compute Engine. * @alias oslogin.users.getLoginProfile * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The unique ID for the user in format `users/{user}`. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ getLoginProfile(params?: any, options?: MethodOptions): AxiosPromise<Schema$LoginProfile>; getLoginProfile(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$LoginProfile>, callback?: BodyResponseCallback<Schema$LoginProfile>): void; /** * oslogin.users.importSshPublicKey * @desc Adds an SSH public key and returns the profile information. Default * POSIX account information is set when no username and UID exist as part of * the login profile. * @alias oslogin.users.importSshPublicKey * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.parent The unique ID for the user in format `users/{user}`. * @param {string=} params.projectId The project ID of the Google Cloud Platform project. * @param {().SshPublicKey} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ importSshPublicKey(params?: any, options?: MethodOptions): AxiosPromise<Schema$ImportSshPublicKeyResponse>; importSshPublicKey(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ImportSshPublicKeyResponse>, callback?: BodyResponseCallback<Schema$ImportSshPublicKeyResponse>): void; } export declare class Resource$Users$Projects { root: Oslogin; constructor(root: Oslogin); getRoot(): Oslogin; /** * oslogin.users.projects.delete * @desc Deletes a POSIX account. * @alias oslogin.users.projects.delete * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name A reference to the POSIX account to update. POSIX accounts are identified by the project ID they are associated with. A reference to the POSIX account is in format `users/{user}/projects/{project}`. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ delete(params?: any, options?: MethodOptions): AxiosPromise<Schema$Empty>; delete(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Empty>, callback?: BodyResponseCallback<Schema$Empty>): void; } export declare class Resource$Users$Sshpublickeys { root: Oslogin; constructor(root: Oslogin); getRoot(): Oslogin; /** * oslogin.users.sshPublicKeys.delete * @desc Deletes an SSH public key. * @alias oslogin.users.sshPublicKeys.delete * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The fingerprint of the public key to update. Public keys are identified by their SHA-256 fingerprint. The fingerprint of the public key is in format `users/{user}/sshPublicKeys/{fingerprint}`. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ delete(params?: any, options?: MethodOptions): AxiosPromise<Schema$Empty>; delete(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Empty>, callback?: BodyResponseCallback<Schema$Empty>): void; /** * oslogin.users.sshPublicKeys.get * @desc Retrieves an SSH public key. * @alias oslogin.users.sshPublicKeys.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The fingerprint of the public key to retrieve. Public keys are identified by their SHA-256 fingerprint. The fingerprint of the public key is in format `users/{user}/sshPublicKeys/{fingerprint}`. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$SshPublicKey>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$SshPublicKey>, callback?: BodyResponseCallback<Schema$SshPublicKey>): void; /** * oslogin.users.sshPublicKeys.patch * @desc Updates an SSH public key and returns the profile information. This * method supports patch semantics. * @alias oslogin.users.sshPublicKeys.patch * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The fingerprint of the public key to update. Public keys are identified by their SHA-256 fingerprint. The fingerprint of the public key is in format `users/{user}/sshPublicKeys/{fingerprint}`. * @param {string=} params.updateMask Mask to control which fields get updated. Updates all if not present. * @param {().SshPublicKey} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ patch(params?: any, options?: MethodOptions): AxiosPromise<Schema$SshPublicKey>; patch(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$SshPublicKey>, callback?: BodyResponseCallback<Schema$SshPublicKey>): void; }