// Copyright 2020 Google LLC
//
// 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
//
// https://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.
// Note: this file is purely for documentation. Any contents are not expected
// to be loaded as the JS file.
/**
* Message representing a period of time between two timestamps.
*
* @property {Object} startTime
* Begin of the period (inclusive).
*
* This object should have the same structure as [Timestamp]{@link google.protobuf.Timestamp}
*
* @property {Object} endTime
* End of the period (exclusive).
*
* This object should have the same structure as [Timestamp]{@link google.protobuf.Timestamp}
*
* @typedef TimestampRange
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.TimestampRange definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const TimestampRange = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* A resource that represents a location with full geographic information.
*
* @property {number} locationType
* The type of a location, which corresponds to the address lines field of
* google.type.PostalAddress. For example, "Downtown, Atlanta, GA, USA"
* has a type of LocationType.NEIGHBORHOOD, and "Kansas City, KS, USA"
* has a type of LocationType.LOCALITY.
*
* The number should be among the values of [LocationType]{@link google.cloud.talent.v4beta1.LocationType}
*
* @property {Object} postalAddress
* Postal address of the location that includes human readable information,
* such as postal delivery and payments addresses. Given a postal address,
* a postal service can deliver items to a premises, P.O. Box, or other
* delivery location.
*
* This object should have the same structure as [PostalAddress]{@link google.type.PostalAddress}
*
* @property {Object} latLng
* An object representing a latitude/longitude pair.
*
* This object should have the same structure as [LatLng]{@link google.type.LatLng}
*
* @property {number} radiusMiles
* Radius in miles of the job location. This value is derived from the
* location bounding box in which a circle with the specified radius
* centered from google.type.LatLng covers the area associated with the
* job location.
* For example, currently, "Mountain View, CA, USA" has a radius of
* 6.17 miles.
*
* @typedef Location
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.Location definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const Location = {
// This is for documentation. Actual contents will be loaded by gRPC.
/**
* An enum which represents the type of a location.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
LocationType: {
/**
* Default value if the type isn't specified.
*/
LOCATION_TYPE_UNSPECIFIED: 0,
/**
* A country level location.
*/
COUNTRY: 1,
/**
* A state or equivalent level location.
*/
ADMINISTRATIVE_AREA: 2,
/**
* A county or equivalent level location.
*/
SUB_ADMINISTRATIVE_AREA: 3,
/**
* A city or equivalent level location.
*/
LOCALITY: 4,
/**
* A postal code level location.
*/
POSTAL_CODE: 5,
/**
* A sublocality is a subdivision of a locality, for example a city borough,
* ward, or arrondissement. Sublocalities are usually recognized by a local
* political authority. For example, Manhattan and Brooklyn are recognized
* as boroughs by the City of New York, and are therefore modeled as
* sublocalities.
*/
SUB_LOCALITY: 6,
/**
* A district or equivalent level location.
*/
SUB_LOCALITY_1: 7,
/**
* A smaller district or equivalent level display.
*/
SUB_LOCALITY_2: 8,
/**
* A neighborhood level location.
*/
NEIGHBORHOOD: 9,
/**
* A street address level location.
*/
STREET_ADDRESS: 10
}
};
/**
* Meta information related to the job searcher or entity
* conducting the job search. This information is used to improve the
* performance of the service.
*
* @property {string} domain
* Required if allow_missing_ids is unset or `false`.
*
* The client-defined scope or source of the service call, which typically
* is the domain on
* which the service has been implemented and is currently being run.
*
* For example, if the service is being run by client <em>Foo, Inc.</em>, on
* job board www.foo.com and career site www.bar.com, then this field is
* set to "foo.com" for use on the job board, and "bar.com" for use on the
* career site.
*
* Note that any improvements to the model for a particular tenant site rely
* on this field being set correctly to a unique domain.
*
* The maximum number of allowed characters is 255.
*
* @property {string} sessionId
* Required if allow_missing_ids is unset or `false`.
*
* A unique session identification string. A session is defined as the
* duration of an end user's interaction with the service over a certain
* period.
* Obfuscate this field for privacy concerns before
* providing it to the service.
*
* Note that any improvements to the model for a particular tenant site rely
* on this field being set correctly to a unique session ID.
*
* The maximum number of allowed characters is 255.
*
* @property {string} userId
* Required if allow_missing_ids is unset or `false`.
*
* A unique user identification string, as determined by the client.
* To have the strongest positive impact on search quality
* make sure the client-level is unique.
* Obfuscate this field for privacy concerns before
* providing it to the service.
*
* Note that any improvements to the model for a particular tenant site rely
* on this field being set correctly to a unique user ID.
*
* The maximum number of allowed characters is 255.
*
* @property {boolean} allowMissingIds
* Only set when any of domain, session_id and user_id isn't
* available for some reason. It is highly recommended not to set this field
* and provide accurate domain, session_id and user_id for the
* best service experience.
*
* @property {Object} deviceInfo
* The type of device used by the job seeker at the time of the call to the
* service.
*
* This object should have the same structure as [DeviceInfo]{@link google.cloud.talent.v4beta1.DeviceInfo}
*
* @typedef RequestMetadata
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.RequestMetadata definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const RequestMetadata = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Additional information returned to client, such as debugging information.
*
* @property {string} requestId
* A unique id associated with this call.
* This id is logged for tracking purposes.
*
* @typedef ResponseMetadata
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.ResponseMetadata definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const ResponseMetadata = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Device information collected from the job seeker, candidate, or
* other entity conducting the job search. Providing this information improves
* the quality of the search results across devices.
*
* @property {number} deviceType
* Type of the device.
*
* The number should be among the values of [DeviceType]{@link google.cloud.talent.v4beta1.DeviceType}
*
* @property {string} id
* A device-specific ID. The ID must be a unique identifier that
* distinguishes the device from other devices.
*
* @typedef DeviceInfo
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.DeviceInfo definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const DeviceInfo = {
// This is for documentation. Actual contents will be loaded by gRPC.
/**
* An enumeration describing an API access portal and exposure mechanism.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
DeviceType: {
/**
* The device type isn't specified.
*/
DEVICE_TYPE_UNSPECIFIED: 0,
/**
* A desktop web browser, such as, Chrome, Firefox, Safari, or Internet
* Explorer)
*/
WEB: 1,
/**
* A mobile device web browser, such as a phone or tablet with a Chrome
* browser.
*/
MOBILE_WEB: 2,
/**
* An Android device native application.
*/
ANDROID: 3,
/**
* An iOS device native application.
*/
IOS: 4,
/**
* A bot, as opposed to a device operated by human beings, such as a web
* crawler.
*/
BOT: 5,
/**
* Other devices types.
*/
OTHER: 6
}
};
/**
* Custom attribute values that are either filterable or non-filterable.
*
* @property {string[]} stringValues
* Exactly one of string_values or long_values must be specified.
*
* This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
* `CASE_INSENSITIVE_MATCH`) search.
* For filterable `string_value`s, a maximum total number of 200 values
* is allowed, with each `string_value` has a byte size of no more than
* 500B. For unfilterable `string_values`, the maximum total byte size of
* unfilterable `string_values` is 50KB.
*
* Empty string isn't allowed.
*
* @property {number[]} longValues
* Exactly one of string_values or long_values must be specified.
*
* This field is used to perform number range search.
* (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
*
* Currently at most 1 long_values is supported.
*
* @property {boolean} filterable
* If the `filterable` flag is true, custom field values are searchable.
* If false, values are not searchable.
*
* Default is false.
*
* @typedef CustomAttribute
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.CustomAttribute definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const CustomAttribute = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Spell check result.
*
* @property {boolean} corrected
* Indicates if the query was corrected by the spell checker.
*
* @property {string} correctedText
* Correction output consisting of the corrected keyword string.
*
* @property {string} correctedHtml
* Corrected output with html tags to highlight the corrected words.
* Corrected words are called out with the "<b><i>...</i></b>" html tags.
*
* For example, the user input query is "software enginear", where the second
* word, "enginear," is incorrect. It should be "engineer". When spelling
* correction is enabled, this value is
* "software <b><i>engineer</i></b>".
*
* @typedef SpellingCorrection
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.SpellingCorrection definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const SpellingCorrection = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Job compensation details.
*
* @property {Object[]} entries
* Job compensation information.
*
* At most one entry can be of type
* CompensationInfo.CompensationType.BASE, which is
* referred as **base compensation entry** for the job.
*
* This object should have the same structure as [CompensationEntry]{@link google.cloud.talent.v4beta1.CompensationEntry}
*
* @property {Object} annualizedBaseCompensationRange
* Output only. Annualized base compensation range. Computed as base compensation entry's
* CompensationEntry.amount times
* CompensationEntry.expected_units_per_year.
*
* See CompensationEntry for explanation on compensation annualization.
*
* This object should have the same structure as [CompensationRange]{@link google.cloud.talent.v4beta1.CompensationRange}
*
* @property {Object} annualizedTotalCompensationRange
* Output only. Annualized total compensation range. Computed as all compensation entries'
* CompensationEntry.amount times
* CompensationEntry.expected_units_per_year.
*
* See CompensationEntry for explanation on compensation annualization.
*
* This object should have the same structure as [CompensationRange]{@link google.cloud.talent.v4beta1.CompensationRange}
*
* @typedef CompensationInfo
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.CompensationInfo definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const CompensationInfo = {
// This is for documentation. Actual contents will be loaded by gRPC.
/**
* A compensation entry that represents one component of compensation, such
* as base pay, bonus, or other compensation type.
*
* Annualization: One compensation entry can be annualized if
* - it contains valid amount or range.
* - and its expected_units_per_year is set or can be derived.
* Its annualized range is determined as (amount or range) times
* expected_units_per_year.
*
* @property {number} type
* Compensation type.
*
* Default is CompensationType.COMPENSATION_TYPE_UNSPECIFIED.
*
* The number should be among the values of [CompensationType]{@link google.cloud.talent.v4beta1.CompensationType}
*
* @property {number} unit
* Frequency of the specified amount.
*
* Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
*
* The number should be among the values of [CompensationUnit]{@link google.cloud.talent.v4beta1.CompensationUnit}
*
* @property {Object} amount
* Compensation amount.
*
* This object should have the same structure as [Money]{@link google.type.Money}
*
* @property {Object} range
* Compensation range.
*
* This object should have the same structure as [CompensationRange]{@link google.cloud.talent.v4beta1.CompensationRange}
*
* @property {string} description
* Compensation description. For example, could
* indicate equity terms or provide additional context to an estimated
* bonus.
*
* @property {Object} expectedUnitsPerYear
* Expected number of units paid each year. If not specified, when
* Job.employment_types is FULLTIME, a default value is inferred
* based on unit. Default values:
* - HOURLY: 2080
* - DAILY: 260
* - WEEKLY: 52
* - MONTHLY: 12
* - ANNUAL: 1
*
* This object should have the same structure as [DoubleValue]{@link google.protobuf.DoubleValue}
*
* @typedef CompensationEntry
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
CompensationEntry: {
// This is for documentation. Actual contents will be loaded by gRPC.
},
/**
* Compensation range.
*
* @property {Object} maxCompensation
* The maximum amount of compensation. If left empty, the value is set
* to a maximal compensation value and the currency code is set to
* match the currency code of
* min_compensation.
*
* This object should have the same structure as [Money]{@link google.type.Money}
*
* @property {Object} minCompensation
* The minimum amount of compensation. If left empty, the value is set
* to zero and the currency code is set to match the
* currency code of max_compensation.
*
* This object should have the same structure as [Money]{@link google.type.Money}
*
* @typedef CompensationRange
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.CompensationInfo.CompensationRange definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
CompensationRange: {
// This is for documentation. Actual contents will be loaded by gRPC.
},
/**
* The type of compensation.
*
* For compensation amounts specified in non-monetary amounts,
* describe the compensation scheme in the CompensationEntry.description.
*
* For example, tipping format is described in
* CompensationEntry.description (for example, "expect 15-20% tips based
* on customer bill.") and an estimate of the tips provided in
* CompensationEntry.amount or CompensationEntry.range ($10 per hour).
*
* For example, equity is described in CompensationEntry.description
* (for example, "1% - 2% equity vesting over 4 years, 1 year cliff") and
* value estimated in CompensationEntry.amount or
* CompensationEntry.range. If no value estimate is possible, units are
* CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED and then further
* clarified in CompensationEntry.description field.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
CompensationType: {
/**
* Default value.
*/
COMPENSATION_TYPE_UNSPECIFIED: 0,
/**
* Base compensation: Refers to the fixed amount of money paid to an
* employee by an employer in return for work performed. Base compensation
* does not include benefits, bonuses or any other potential compensation
* from an employer.
*/
BASE: 1,
/**
* Bonus.
*/
BONUS: 2,
/**
* Signing bonus.
*/
SIGNING_BONUS: 3,
/**
* Equity.
*/
EQUITY: 4,
/**
* Profit sharing.
*/
PROFIT_SHARING: 5,
/**
* Commission.
*/
COMMISSIONS: 6,
/**
* Tips.
*/
TIPS: 7,
/**
* Other compensation type.
*/
OTHER_COMPENSATION_TYPE: 8
},
/**
* Pay frequency.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
CompensationUnit: {
/**
* Default value.
*/
COMPENSATION_UNIT_UNSPECIFIED: 0,
/**
* Hourly.
*/
HOURLY: 1,
/**
* Daily.
*/
DAILY: 2,
/**
* Weekly
*/
WEEKLY: 3,
/**
* Monthly.
*/
MONTHLY: 4,
/**
* Yearly.
*/
YEARLY: 5,
/**
* One time.
*/
ONE_TIME: 6,
/**
* Other compensation units.
*/
OTHER_COMPENSATION_UNIT: 7
}
};
/**
* Resource that represents a license or certification.
*
* @property {string} displayName
* Name of license or certification.
*
* Number of characters allowed is 100.
*
* @property {Object} acquireDate
* Acquisition date or effective date of license or certification.
*
* This object should have the same structure as [Date]{@link google.type.Date}
*
* @property {Object} expireDate
* Expiration date of license of certification.
*
* This object should have the same structure as [Date]{@link google.type.Date}
*
* @property {string} authority
* Authority of license, such as government.
*
* Number of characters allowed is 100.
*
* @property {string} description
* Description of license or certification.
*
* Number of characters allowed is 100,000.
*
* @typedef Certification
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.Certification definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const Certification = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Resource that represents a skill of a candidate.
*
* @property {string} displayName
* Skill display name.
*
* For example, "Java", "Python".
*
* Number of characters allowed is 100.
*
* @property {Object} lastUsedDate
* The last time this skill was used.
*
* This object should have the same structure as [Date]{@link google.type.Date}
*
* @property {number} level
* Skill proficiency level which indicates how proficient the candidate is at
* this skill.
*
* The number should be among the values of [SkillProficiencyLevel]{@link google.cloud.talent.v4beta1.SkillProficiencyLevel}
*
* @property {string} context
* A paragraph describes context of this skill.
*
* Number of characters allowed is 100,000.
*
* @property {string} skillNameSnippet
* Output only. Skill name snippet shows how the display_name is related to a search
* query. It's empty if the display_name isn't related to the search
* query.
*
* @typedef Skill
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.Skill definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const Skill = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Details of an interview.
*
* @property {Object} rating
* The rating on this interview.
*
* This object should have the same structure as [Rating]{@link google.cloud.talent.v4beta1.Rating}
*
* @property {number} outcome
* Required. The overall decision resulting from this interview (positive, negative,
* nuetral).
*
* The number should be among the values of [Outcome]{@link google.cloud.talent.v4beta1.Outcome}
*
* @typedef Interview
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.Interview definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const Interview = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* The details of the score received for an assessment or interview.
*
* @property {number} overall
* Overall score.
*
* @property {number} min
* The minimum value for the score.
*
* @property {number} max
* The maximum value for the score.
*
* @property {number} interval
* The steps within the score (for example, interval = 1 max = 5
* min = 1 indicates that the score can be 1, 2, 3, 4, or 5)
*
* @typedef Rating
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.Rating definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const Rating = {
// This is for documentation. Actual contents will be loaded by gRPC.
};
/**
* Metadata used for long running operations returned by CTS batch APIs.
* It's used to replace google.longrunning.Operation.metadata.
*
* @property {number} state
* The state of a long running operation.
*
* The number should be among the values of [State]{@link google.cloud.talent.v4beta1.State}
*
* @property {string} stateDescription
* More detailed information about operation state.
*
* @property {number} successCount
* Count of successful item(s) inside an operation.
*
* @property {number} failureCount
* Count of failed item(s) inside an operation.
*
* @property {number} totalCount
* Count of total item(s) inside an operation.
*
* @property {Object} createTime
* The time when the batch operation is created.
*
* This object should have the same structure as [Timestamp]{@link google.protobuf.Timestamp}
*
* @property {Object} updateTime
* The time when the batch operation status is updated. The metadata and the
* update_time is refreshed every minute otherwise cached data is
* returned.
*
* This object should have the same structure as [Timestamp]{@link google.protobuf.Timestamp}
*
* @property {Object} endTime
* The time when the batch operation is finished and
* google.longrunning.Operation.done is set to `true`.
*
* This object should have the same structure as [Timestamp]{@link google.protobuf.Timestamp}
*
* @typedef BatchOperationMetadata
* @memberof google.cloud.talent.v4beta1
* @see [google.cloud.talent.v4beta1.BatchOperationMetadata definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/common.proto}
*/
const BatchOperationMetadata = {
// This is for documentation. Actual contents will be loaded by gRPC.
/**
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
State: {
/**
* Default value.
*/
STATE_UNSPECIFIED: 0,
/**
* The batch operation is being prepared for processing.
*/
INITIALIZING: 1,
/**
* The batch operation is actively being processed.
*/
PROCESSING: 2,
/**
* The batch operation is processed, and at least one item has been
* successfully processed.
*/
SUCCEEDED: 3,
/**
* The batch operation is done and no item has been successfully processed.
*/
FAILED: 4,
/**
* The batch operation is in the process of cancelling after
* google.longrunning.Operations.CancelOperation is called.
*/
CANCELLING: 5,
/**
* The batch operation is done after
* google.longrunning.Operations.CancelOperation is called. Any items
* processed before cancelling are returned in the response.
*/
CANCELLED: 6
}
};
/**
* The type of candidate availability signal.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const AvailabilitySignalType = {
/**
* Default value.
*/
AVAILABILITY_SIGNAL_TYPE_UNSPECIFIED: 0,
/**
* Job application signal.
*
* In the context of Profile.availability_signals, this signal is related
* to the candidate's most recent application.
* last_update_time is
* calculated from max(Application.create_time) from all Application
* records where Application.source is any of the following:
* APPLY_DIRECT_WEB
* APPLY_DIRECT_MOBILE_WEB
* APPLY_DIRECT_MOBILE_APP
* APPLY_DIRECT_IN_PERSON
* APPLY_INDIRECT
*
* In the context of AvailabilityFilter, the filter is applied on
* Profile.availability_signals where
* type is JOB_APPLICATION.
*/
JOB_APPLICATION: 1,
/**
* Resume update signal.
*
* In the context of Profile.availability_signals, this signal is related
* to the candidate's most recent update to their resume.
* For a SummarizedProfile.summary,
* last_update_time is
* calculated from max(Profile.resume_update_time) from all
* SummarizedProfile.profiles.
*
* In the context of AvailabilityFilter, the filter is applied on
* Profile.availability_signals where
* type is RESUME_UPDATE.
*/
RESUME_UPDATE: 2,
/**
* Candidate update signal.
*
* In the context of Profile.availability_signals, this signal is related
* to the candidate's most recent update to their profile.
* For a SummarizedProfile.summary,
* last_update_time is
* calculated from max(Profile.candidate_update_time) from all
* SummarizedProfile.profiles.
*
* In the context of AvailabilityFilter, the filter is applied on
* Profile.availability_signals where
* type is CANDIDATE_UPDATE.
*/
CANDIDATE_UPDATE: 3,
/**
* Client submission signal.
*
* In the context of Profile.availability_signals, this signal is related
* to the candidate's most recent submission.
* last_update_time is
* calculated from max(Application.create_time) from all Application
* records where Application.stage is any of the following:
* HIRING_MANAGER_REVIEW
* INTERVIEW
* OFFER_EXTENDED
* OFFER_ACCEPTED
* STARTED
*
* In the context of AvailabilityFilter, the filter is applied on
* Profile.availability_signals where
* type is CLIENT_SUBMISSION.
*/
CLIENT_SUBMISSION: 4
};
/**
* Method for commute.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const CommuteMethod = {
/**
* Commute method isn't specified.
*/
COMMUTE_METHOD_UNSPECIFIED: 0,
/**
* Commute time is calculated based on driving time.
*/
DRIVING: 1,
/**
* Commute time is calculated based on public transit including bus, metro,
* subway, and so on.
*/
TRANSIT: 2,
/**
* Commute time is calculated based on walking time.
*/
WALKING: 3,
/**
* Commute time is calculated based on biking time.
*/
CYCLING: 4
};
/**
* An enum that represents the size of the company.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const CompanySize = {
/**
* Default value if the size isn't specified.
*/
COMPANY_SIZE_UNSPECIFIED: 0,
/**
* The company has less than 50 employees.
*/
MINI: 1,
/**
* The company has between 50 and 99 employees.
*/
SMALL: 2,
/**
* The company has between 100 and 499 employees.
*/
SMEDIUM: 3,
/**
* The company has between 500 and 999 employees.
*/
MEDIUM: 4,
/**
* The company has between 1,000 and 4,999 employees.
*/
BIG: 5,
/**
* The company has between 5,000 and 9,999 employees.
*/
BIGGER: 6,
/**
* The company has 10,000 or more employees.
*/
GIANT: 7
};
/**
* Enum that represents the usage of the contact information.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const ContactInfoUsage = {
/**
* Default value.
*/
CONTACT_INFO_USAGE_UNSPECIFIED: 0,
/**
* Personal use.
*/
PERSONAL: 1,
/**
* Work use.
*/
WORK: 2,
/**
* School use.
*/
SCHOOL: 3
};
/**
* Educational degree level defined in International Standard Classification
* of Education (ISCED).
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const DegreeType = {
/**
* Default value. Represents no degree, or early childhood education.
* Maps to ISCED code 0.
* Ex) Kindergarten
*/
DEGREE_TYPE_UNSPECIFIED: 0,
/**
* Primary education which is typically the first stage of compulsory
* education. ISCED code 1.
* Ex) Elementary school
*/
PRIMARY_EDUCATION: 1,
/**
* Lower secondary education; First stage of secondary education building on
* primary education, typically with a more subject-oriented curriculum.
* ISCED code 2.
* Ex) Middle school
*/
LOWER_SECONDARY_EDUCATION: 2,
/**
* Middle education; Second/final stage of secondary education preparing for
* tertiary education and/or providing skills relevant to employment.
* Usually with an increased range of subject options and streams. ISCED
* code 3.
* Ex) High school
*/
UPPER_SECONDARY_EDUCATION: 3,
/**
* Adult Remedial Education; Programmes providing learning experiences that
* build on secondary education and prepare for labour market entry and/or
* tertiary education. The content is broader than secondary but not as
* complex as tertiary education. ISCED code 4.
*/
ADULT_REMEDIAL_EDUCATION: 4,
/**
* Associate's or equivalent; Short first tertiary programmes that are
* typically practically-based, occupationally-specific and prepare for
* labour market entry. These programmes may also provide a pathway to other
* tertiary programmes. ISCED code 5.
*/
ASSOCIATES_OR_EQUIVALENT: 5,
/**
* Bachelor's or equivalent; Programmes designed to provide intermediate
* academic and/or professional knowledge, skills and competencies leading
* to a first tertiary degree or equivalent qualification. ISCED code 6.
*/
BACHELORS_OR_EQUIVALENT: 6,
/**
* Master's or equivalent; Programmes designed to provide advanced academic
* and/or professional knowledge, skills and competencies leading to a
* second tertiary degree or equivalent qualification. ISCED code 7.
*/
MASTERS_OR_EQUIVALENT: 7,
/**
* Doctoral or equivalent; Programmes designed primarily to lead to an
* advanced research qualification, usually concluding with the submission
* and defense of a substantive dissertation of publishable quality based on
* original research. ISCED code 8.
*/
DOCTORAL_OR_EQUIVALENT: 8
};
/**
* An enum that represents the employment type of a job.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const EmploymentType = {
/**
* The default value if the employment type isn't specified.
*/
EMPLOYMENT_TYPE_UNSPECIFIED: 0,
/**
* The job requires working a number of hours that constitute full
* time employment, typically 40 or more hours per week.
*/
FULL_TIME: 1,
/**
* The job entails working fewer hours than a full time job,
* typically less than 40 hours a week.
*/
PART_TIME: 2,
/**
* The job is offered as a contracted, as opposed to a salaried employee,
* position.
*/
CONTRACTOR: 3,
/**
* The job is offered as a contracted position with the understanding
* that it's converted into a full-time position at the end of the
* contract. Jobs of this type are also returned by a search for
* EmploymentType.CONTRACTOR jobs.
*/
CONTRACT_TO_HIRE: 4,
/**
* The job is offered as a temporary employment opportunity, usually
* a short-term engagement.
*/
TEMPORARY: 5,
/**
* The job is a fixed-term opportunity for students or entry-level job
* seekers to obtain on-the-job training, typically offered as a summer
* position.
*/
INTERN: 6,
/**
* The is an opportunity for an individual to volunteer, where there's no
* expectation of compensation for the provided services.
*/
VOLUNTEER: 7,
/**
* The job requires an employee to work on an as-needed basis with a
* flexible schedule.
*/
PER_DIEM: 8,
/**
* The job involves employing people in remote areas and flying them
* temporarily to the work site instead of relocating employees and their
* families permanently.
*/
FLY_IN_FLY_OUT: 9,
/**
* The job does not fit any of the other listed types.
*/
OTHER_EMPLOYMENT_TYPE: 10
};
/**
* Option for HTML content sanitization on user input fields, for example, job
* description. By setting this option, user can determine whether and how
* sanitization is performed on these fields.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const HtmlSanitization = {
/**
* Default value.
*/
HTML_SANITIZATION_UNSPECIFIED: 0,
/**
* Disables sanitization on HTML input.
*/
HTML_SANITIZATION_DISABLED: 1,
/**
* Sanitizes HTML input, only accepts bold, italic, ordered list, and
* unordered list markup tags.
*/
SIMPLE_FORMATTING_ONLY: 2
};
/**
* An enum that represents employee benefits included with the job.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const JobBenefit = {
/**
* Default value if the type isn't specified.
*/
JOB_BENEFIT_UNSPECIFIED: 0,
/**
* The job includes access to programs that support child care, such
* as daycare.
*/
CHILD_CARE: 1,
/**
* The job includes dental services covered by a dental
* insurance plan.
*/
DENTAL: 2,
/**
* The job offers specific benefits to domestic partners.
*/
DOMESTIC_PARTNER: 3,
/**
* The job allows for a flexible work schedule.
*/
FLEXIBLE_HOURS: 4,
/**
* The job includes health services covered by a medical insurance plan.
*/
MEDICAL: 5,
/**
* The job includes a life insurance plan provided by the employer or
* available for purchase by the employee.
*/
LIFE_INSURANCE: 6,
/**
* The job allows for a leave of absence to a parent to care for a newborn
* child.
*/
PARENTAL_LEAVE: 7,
/**
* The job includes a workplace retirement plan provided by the
* employer or available for purchase by the employee.
*/
RETIREMENT_PLAN: 8,
/**
* The job allows for paid time off due to illness.
*/
SICK_DAYS: 9,
/**
* The job includes paid time off for vacation.
*/
VACATION: 10,
/**
* The job includes vision services covered by a vision
* insurance plan.
*/
VISION: 11
};
/**
* An enum that represents the categorization or primary focus of specific
* role. This value is different than the "industry" associated with a role,
* which is related to the categorization of the company listing the job.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const JobCategory = {
/**
* The default value if the category isn't specified.
*/
JOB_CATEGORY_UNSPECIFIED: 0,
/**
* An accounting and finance job, such as an Accountant.
*/
ACCOUNTING_AND_FINANCE: 1,
/**
* An administrative and office job, such as an Administrative Assistant.
*/
ADMINISTRATIVE_AND_OFFICE: 2,
/**
* An advertising and marketing job, such as Marketing Manager.
*/
ADVERTISING_AND_MARKETING: 3,
/**
* An animal care job, such as Veterinarian.
*/
ANIMAL_CARE: 4,
/**
* An art, fashion, or design job, such as Designer.
*/
ART_FASHION_AND_DESIGN: 5,
/**
* A business operations job, such as Business Operations Manager.
*/
BUSINESS_OPERATIONS: 6,
/**
* A cleaning and facilities job, such as Custodial Staff.
*/
CLEANING_AND_FACILITIES: 7,
/**
* A computer and IT job, such as Systems Administrator.
*/
COMPUTER_AND_IT: 8,
/**
* A construction job, such as General Laborer.
*/
CONSTRUCTION: 9,
/**
* A customer service job, such s Cashier.
*/
CUSTOMER_SERVICE: 10,
/**
* An education job, such as School Teacher.
*/
EDUCATION: 11,
/**
* An entertainment and travel job, such as Flight Attendant.
*/
ENTERTAINMENT_AND_TRAVEL: 12,
/**
* A farming or outdoor job, such as Park Ranger.
*/
FARMING_AND_OUTDOORS: 13,
/**
* A healthcare job, such as Registered Nurse.
*/
HEALTHCARE: 14,
/**
* A human resources job, such as Human Resources Director.
*/
HUMAN_RESOURCES: 15,
/**
* An installation, maintenance, or repair job, such as Electrician.
*/
INSTALLATION_MAINTENANCE_AND_REPAIR: 16,
/**
* A legal job, such as Law Clerk.
*/
LEGAL: 17,
/**
* A management job, often used in conjunction with another category,
* such as Store Manager.
*/
MANAGEMENT: 18,
/**
* A manufacturing or warehouse job, such as Assembly Technician.
*/
MANUFACTURING_AND_WAREHOUSE: 19,
/**
* A media, communications, or writing job, such as Media Relations.
*/
MEDIA_COMMUNICATIONS_AND_WRITING: 20,
/**
* An oil, gas or mining job, such as Offshore Driller.
*/
OIL_GAS_AND_MINING: 21,
/**
* A personal care and services job, such as Hair Stylist.
*/
PERSONAL_CARE_AND_SERVICES: 22,
/**
* A protective services job, such as Security Guard.
*/
PROTECTIVE_SERVICES: 23,
/**
* A real estate job, such as Buyer's Agent.
*/
REAL_ESTATE: 24,
/**
* A restaurant and hospitality job, such as Restaurant Server.
*/
RESTAURANT_AND_HOSPITALITY: 25,
/**
* A sales and/or retail job, such Sales Associate.
*/
SALES_AND_RETAIL: 26,
/**
* A science and engineering job, such as Lab Technician.
*/
SCIENCE_AND_ENGINEERING: 27,
/**
* A social services or non-profit job, such as Case Worker.
*/
SOCIAL_SERVICES_AND_NON_PROFIT: 28,
/**
* A sports, fitness, or recreation job, such as Personal Trainer.
*/
SPORTS_FITNESS_AND_RECREATION: 29,
/**
* A transportation or logistics job, such as Truck Driver.
*/
TRANSPORTATION_AND_LOGISTICS: 30
};
/**
* An enum that represents the required experience level required for the job.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const JobLevel = {
/**
* The default value if the level isn't specified.
*/
JOB_LEVEL_UNSPECIFIED: 0,
/**
* Entry-level individual contributors, typically with less than 2 years of
* experience in a similar role. Includes interns.
*/
ENTRY_LEVEL: 1,
/**
* Experienced individual contributors, typically with 2+ years of
* experience in a similar role.
*/
EXPERIENCED: 2,
/**
* Entry- to mid-level managers responsible for managing a team of people.
*/
MANAGER: 3,
/**
* Senior-level managers responsible for managing teams of managers.
*/
DIRECTOR: 4,
/**
* Executive-level managers and above, including C-level positions.
*/
EXECUTIVE: 5
};
/**
* The overall outcome /decision / result indicator.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const Outcome = {
/**
* Default value.
*/
OUTCOME_UNSPECIFIED: 0,
/**
* A positive outcome / passing indicator (for example, candidate was
* recommended for hiring or to be moved forward in the hiring process,
* candidate passed a test).
*/
POSITIVE: 1,
/**
* A neutral outcome / no clear indicator (for example, no strong
* reccommendation either to move forward / not move forward, neutral score).
*/
NEUTRAL: 2,
/**
* A negative outcome / failing indicator (for example, candidate was
* recommended to NOT move forward in the hiring process, failed a test).
*/
NEGATIVE: 3,
/**
* The assessment outcome is not available or otherwise unknown (for example,
* candidate did not complete assessment).
*/
OUTCOME_NOT_AVAILABLE: 4
};
/**
* An enum that represents the job posting region. In most cases, job postings
* don't need to specify a region. If a region is given, jobs are
* eligible for searches in the specified region.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const PostingRegion = {
/**
* If the region is unspecified, the job is only returned if it
* matches the LocationFilter.
*/
POSTING_REGION_UNSPECIFIED: 0,
/**
* In addition to exact location matching, job posting is returned when the
* LocationFilter in the search query is in the same administrative area
* as the returned job posting. For example, if a `ADMINISTRATIVE_AREA` job
* is posted in "CA, USA", it's returned if LocationFilter has
* "Mountain View".
*
* Administrative area refers to top-level administrative subdivision of this
* country. For example, US state, IT region, UK constituent nation and
* JP prefecture.
*/
ADMINISTRATIVE_AREA: 1,
/**
* In addition to exact location matching, job is returned when
* LocationFilter in search query is in the same country as this job.
* For example, if a `NATION_WIDE` job is posted in "USA", it's
* returned if LocationFilter has 'Mountain View'.
*/
NATION: 2,
/**
* Job allows employees to work remotely (telecommute).
* If locations are provided with this value, the job is
* considered as having a location, but telecommuting is allowed.
*/
TELECOMMUTE: 3
};
/**
* Enum that represents the skill proficiency level.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const SkillProficiencyLevel = {
/**
* Default value.
*/
SKILL_PROFICIENCY_LEVEL_UNSPECIFIED: 0,
/**
* Lacks any proficiency in this skill.
*/
UNSKILLED: 6,
/**
* Have a common knowledge or an understanding of basic techniques and
* concepts.
*/
FUNDAMENTAL_AWARENESS: 1,
/**
* Have the level of experience gained in a classroom and/or experimental
* scenarios or as a trainee on-the-job.
*/
NOVICE: 2,
/**
* Be able to successfully complete tasks in this skill as requested. Help
* from an expert may be required from time to time, but can usually perform
* skill independently.
*/
INTERMEDIATE: 3,
/**
* Can perform the actions associated with this skill without assistance.
*/
ADVANCED: 4,
/**
* Known as an expert in this area.
*/
EXPERT: 5
};
/**
* Deprecated. All resources are only visible to the owner.
*
* An enum that represents who has view access to the resource.
*
* @enum {number}
* @memberof google.cloud.talent.v4beta1
*/
const Visibility = {
/**
* Default value.
*/
VISIBILITY_UNSPECIFIED: 0,
/**
* The resource is only visible to the GCP account who owns it.
*/
ACCOUNT_ONLY: 1,
/**
* The resource is visible to the owner and may be visible to other
* applications and processes at Google.
*/
SHARED_WITH_GOOGLE: 2,
/**
* The resource is visible to the owner and may be visible to all other API
* clients.
*/
SHARED_WITH_PUBLIC: 3
};