// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../core/resource'; import * as BusinessPartnersAPI from './business-partners'; import * as TimeCardsAPI from './time-cards'; import * as WorkersAPI from './workers'; import { APIPromise } from '../core/api-promise'; import { PageCursorURL, PagePromise } from '../core/pagination'; import { buildHeaders } from '../internal/headers'; import { RequestOptions } from '../internal/request-options'; import { path } from '../internal/utils/path'; /** * Time entries submitted by workers */ export class TimeEntries extends APIResource { /** * A list of time entries. * * - Requires: `API Tier 2` * - Filterable fields: `worker_id`, `start_time`, `pay_period.start_date`, * `updated_at` * - Expandable fields: `worker`, `time_card` * - Sortable fields: `id`, `created_at`, `updated_at` */ list( query: TimeEntryListParams | null | undefined = {}, options?: RequestOptions, ): PagePromise { return this._client.getAPIList('/time-entries/', PageCursorURL, { query, ...options, }); } /** * Create a new time entry */ create(body: TimeEntryCreateParams, options?: RequestOptions): APIPromise { return this._client.post('/time-entries/', { body, ...options }); } /** * Retrieve a specific time entry */ retrieve( id: string, query: TimeEntryRetrieveParams | null | undefined = {}, options?: RequestOptions, ): APIPromise { return this._client.get(path`/time-entries/${id}/`, { query, ...options }); } /** * Update a specific time entry. */ update( id: string, body: TimeEntryUpdateParams, options?: RequestOptions, ): APIPromise { return this._client.patch(path`/time-entries/${id}/`, { body, ...options }); } /** * Delete a time entry */ delete(id: string, options?: RequestOptions): APIPromise { return this._client.delete(path`/time-entries/${id}/`, { ...options, headers: buildHeaders([{ Accept: '*/*' }, options?.headers]), }); } } export type TimeEntryListResponsesPageCursorURL = PageCursorURL; export interface TimeEntry { /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The duration of the time entry. */ duration?: number; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeEntry.PayPeriod; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The date of the time entry if using duration. */ start_date?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; } export namespace TimeEntry { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The duration of the job shift. */ duration?: number; /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The date of the job shift if using duration. */ start_date?: string; /** * The start time of the job shift. */ start_time?: string; } /** * The pay period associated with the time card. */ export interface PayPeriod { /** * The end date of the pay period. */ end_date?: string; /** * The ID of the pay schedule associated with the pay period. */ pay_schedule_id?: string; /** * The start date of the pay period. */ start_date?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } } export interface TimeEntryListResponse { /** * Identifier field */ id: string; /** * Record creation date */ created_at: string; /** * Record update date */ updated_at: string; /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The end time of the time entry. */ end_time?: string; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeCardsAPI.PayPeriod; /** * The piece-rate premiums earned during the time entry. */ piece_rate_premiums?: Array; /** * The premiums earned during the time entry. */ premiums?: Array; /** * The pay rates for each segment of the time entry. */ segments?: Array; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The start time of the time entry. */ start_time?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; /** * The time card associated with the time entry. * * Expandable field */ time_card?: TimeCardsAPI.TimeCard; /** * The ID of the time card associated with the time entry. */ time_card_id?: string; /** * A summary of the time entry. */ time_entry_summary?: TimeEntryListResponse.TimeEntrySummary; /** * The worker associated with the time entry. * * Expandable field */ worker?: WorkersAPI.Worker; } export namespace TimeEntryListResponse { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The original end time of the break. If the endTime field has been rounded then * this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the break. If the startTime field has been rounded * then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The ID of the worker who made of the comment. */ author_id?: string; /** * The time the comment was created. */ created_at?: string; /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the job shift. */ start_time?: string; } export interface PieceRatePremium { /** * The piece rate name. */ name?: string; /** * The pay rate for this piece rate premium. */ premium_rate?: number; /** * The total units produced at the premium rate. */ premium_units?: number; } export interface Premium { /** * The pay rate name */ name?: string; /** * The total hours worked for at the premium rate. */ premium_hours?: number; /** * The pay rate for this premium. */ premium_rate?: number; } export interface Segment { /** * The ID of the break type. */ break_type_id?: string; /** * Name of the final earning for the segment. */ display_name?: string; /** * The end time of the segment. */ end_time?: string; /** * The IDs of the job codes associated with the segment. */ job_codes_id?: Array; /** * The multiplier for overtime hours in this segment. */ ot_multiplier?: number; /** * The pay rate for this segment. */ pay_rate?: number; /** * The start time of the segment. */ start_time?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } /** * A summary of the time entry. */ export interface TimeEntrySummary { /** * The number of double overtime hours worked during this time entry. */ double_over_time_hours?: number; /** * The duration of the time entry. */ duration?: number; /** * The number of overtime hours worked during this time entry. */ over_time_hours?: number; /** * The number of regular hours worked during this time entry. */ regular_hours?: number; } } export interface TimeEntryCreateResponse { /** * Identifier field */ id: string; /** * Record creation date */ created_at: string; /** * Record update date */ updated_at: string; /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The end time of the time entry. */ end_time?: string; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeCardsAPI.PayPeriod; /** * The piece-rate premiums earned during the time entry. */ piece_rate_premiums?: Array; /** * The premiums earned during the time entry. */ premiums?: Array; /** * The pay rates for each segment of the time entry. */ segments?: Array; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The start time of the time entry. */ start_time?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; /** * The time card associated with the time entry. * * Expandable field */ time_card?: TimeCardsAPI.TimeCard; /** * The ID of the time card associated with the time entry. */ time_card_id?: string; /** * A summary of the time entry. */ time_entry_summary?: TimeEntryCreateResponse.TimeEntrySummary; /** * The worker associated with the time entry. * * Expandable field */ worker?: WorkersAPI.Worker; } export namespace TimeEntryCreateResponse { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The original end time of the break. If the endTime field has been rounded then * this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the break. If the startTime field has been rounded * then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The ID of the worker who made of the comment. */ author_id?: string; /** * The time the comment was created. */ created_at?: string; /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the job shift. */ start_time?: string; } export interface PieceRatePremium { /** * The piece rate name. */ name?: string; /** * The pay rate for this piece rate premium. */ premium_rate?: number; /** * The total units produced at the premium rate. */ premium_units?: number; } export interface Premium { /** * The pay rate name */ name?: string; /** * The total hours worked for at the premium rate. */ premium_hours?: number; /** * The pay rate for this premium. */ premium_rate?: number; } export interface Segment { /** * The ID of the break type. */ break_type_id?: string; /** * Name of the final earning for the segment. */ display_name?: string; /** * The end time of the segment. */ end_time?: string; /** * The IDs of the job codes associated with the segment. */ job_codes_id?: Array; /** * The multiplier for overtime hours in this segment. */ ot_multiplier?: number; /** * The pay rate for this segment. */ pay_rate?: number; /** * The start time of the segment. */ start_time?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } /** * A summary of the time entry. */ export interface TimeEntrySummary { /** * The number of double overtime hours worked during this time entry. */ double_over_time_hours?: number; /** * The duration of the time entry. */ duration?: number; /** * The number of overtime hours worked during this time entry. */ over_time_hours?: number; /** * The number of regular hours worked during this time entry. */ regular_hours?: number; } } /** * Meta information for the response. */ export interface TimeEntryRetrieveResponse extends BusinessPartnersAPI.Meta { /** * Identifier field */ id: string; /** * Record creation date */ created_at: string; /** * Record update date */ updated_at: string; /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The end time of the time entry. */ end_time?: string; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeCardsAPI.PayPeriod; /** * The piece-rate premiums earned during the time entry. */ piece_rate_premiums?: Array; /** * The premiums earned during the time entry. */ premiums?: Array; /** * The pay rates for each segment of the time entry. */ segments?: Array; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The start time of the time entry. */ start_time?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; /** * The time card associated with the time entry. * * Expandable field */ time_card?: TimeCardsAPI.TimeCard; /** * The ID of the time card associated with the time entry. */ time_card_id?: string; /** * A summary of the time entry. */ time_entry_summary?: TimeEntryRetrieveResponse.TimeEntrySummary; /** * The worker associated with the time entry. * * Expandable field */ worker?: WorkersAPI.Worker; } export namespace TimeEntryRetrieveResponse { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The original end time of the break. If the endTime field has been rounded then * this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the break. If the startTime field has been rounded * then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The ID of the worker who made of the comment. */ author_id?: string; /** * The time the comment was created. */ created_at?: string; /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the job shift. */ start_time?: string; } export interface PieceRatePremium { /** * The piece rate name. */ name?: string; /** * The pay rate for this piece rate premium. */ premium_rate?: number; /** * The total units produced at the premium rate. */ premium_units?: number; } export interface Premium { /** * The pay rate name */ name?: string; /** * The total hours worked for at the premium rate. */ premium_hours?: number; /** * The pay rate for this premium. */ premium_rate?: number; } export interface Segment { /** * The ID of the break type. */ break_type_id?: string; /** * Name of the final earning for the segment. */ display_name?: string; /** * The end time of the segment. */ end_time?: string; /** * The IDs of the job codes associated with the segment. */ job_codes_id?: Array; /** * The multiplier for overtime hours in this segment. */ ot_multiplier?: number; /** * The pay rate for this segment. */ pay_rate?: number; /** * The start time of the segment. */ start_time?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } /** * A summary of the time entry. */ export interface TimeEntrySummary { /** * The number of double overtime hours worked during this time entry. */ double_over_time_hours?: number; /** * The duration of the time entry. */ duration?: number; /** * The number of overtime hours worked during this time entry. */ over_time_hours?: number; /** * The number of regular hours worked during this time entry. */ regular_hours?: number; } } export interface TimeEntryUpdateResponse { /** * Identifier field */ id: string; /** * Record creation date */ created_at: string; /** * Record update date */ updated_at: string; /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The end time of the time entry. */ end_time?: string; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeCardsAPI.PayPeriod; /** * The piece-rate premiums earned during the time entry. */ piece_rate_premiums?: Array; /** * The premiums earned during the time entry. */ premiums?: Array; /** * The pay rates for each segment of the time entry. */ segments?: Array; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The start time of the time entry. */ start_time?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; /** * The time card associated with the time entry. * * Expandable field */ time_card?: TimeCardsAPI.TimeCard; /** * The ID of the time card associated with the time entry. */ time_card_id?: string; /** * A summary of the time entry. */ time_entry_summary?: TimeEntryUpdateResponse.TimeEntrySummary; /** * The worker associated with the time entry. * * Expandable field */ worker?: WorkersAPI.Worker; } export namespace TimeEntryUpdateResponse { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The original end time of the break. If the endTime field has been rounded then * this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the break. If the startTime field has been rounded * then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The ID of the worker who made of the comment. */ author_id?: string; /** * The time the comment was created. */ created_at?: string; /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The start time of the job shift. */ start_time?: string; } export interface PieceRatePremium { /** * The piece rate name. */ name?: string; /** * The pay rate for this piece rate premium. */ premium_rate?: number; /** * The total units produced at the premium rate. */ premium_units?: number; } export interface Premium { /** * The pay rate name */ name?: string; /** * The total hours worked for at the premium rate. */ premium_hours?: number; /** * The pay rate for this premium. */ premium_rate?: number; } export interface Segment { /** * The ID of the break type. */ break_type_id?: string; /** * Name of the final earning for the segment. */ display_name?: string; /** * The end time of the segment. */ end_time?: string; /** * The IDs of the job codes associated with the segment. */ job_codes_id?: Array; /** * The multiplier for overtime hours in this segment. */ ot_multiplier?: number; /** * The pay rate for this segment. */ pay_rate?: number; /** * The start time of the segment. */ start_time?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } /** * A summary of the time entry. */ export interface TimeEntrySummary { /** * The number of double overtime hours worked during this time entry. */ double_over_time_hours?: number; /** * The duration of the time entry. */ duration?: number; /** * The number of overtime hours worked during this time entry. */ over_time_hours?: number; /** * The number of regular hours worked during this time entry. */ regular_hours?: number; } } export interface TimeEntryListParams { cursor?: string; expand?: string; filter?: string; order_by?: string; } export interface TimeEntryCreateParams { /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The duration of the time entry. */ duration?: number; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeEntryCreateParams.PayPeriod; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The date of the time entry if using duration. */ start_date?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; } export namespace TimeEntryCreateParams { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The duration of the job shift. */ duration?: number; /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The date of the job shift if using duration. */ start_date?: string; /** * The start time of the job shift. */ start_time?: string; } /** * The pay period associated with the time card. */ export interface PayPeriod { /** * The end date of the pay period. */ end_date?: string; /** * The ID of the pay schedule associated with the pay period. */ pay_schedule_id?: string; /** * The start date of the pay period. */ start_date?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } } export interface TimeEntryRetrieveParams { expand?: string; } export interface TimeEntryUpdateParams { /** * The ID of the worker associated with the time entry. */ worker_id: string; /** * The breaks taken during the time entry. */ breaks?: Array; /** * The comments associated with the time entry. */ comments?: Array; /** * Whether the time entry should create an extra hours run. */ create_extra_hours_run?: boolean; /** * The duration of the time entry. */ duration?: number; /** * The unique key of the time entry in an outside system. If set, no other time * entry with the same key can be created. */ idempotency_key?: string; /** * The job shifts worked during the time entry. */ job_shifts?: Array; /** * The pay period associated with the time card. */ pay_period?: TimeEntryUpdateParams.PayPeriod; /** * Arbitrary shift inputs collected on the time entry */ shift_input_values?: Array; /** * The date of the time entry if using duration. */ start_date?: string; /** * The status of the time entry. */ status?: 'DRAFT' | 'APPROVED' | 'PAID' | 'FINALIZED'; /** * The tags associated with the time entry. */ tags?: Array; } export namespace TimeEntryUpdateParams { export interface Break { /** * The ID of the break type. */ break_type_id?: string; /** * The end time of the break. */ end_time?: string; /** * The start time of the break. */ start_time?: string; } export interface Comment { /** * The text of the comment. */ text?: string; } export interface JobShift { /** * The duration of the job shift. */ duration?: number; /** * The end time of the job shift. */ end_time?: string; /** * Whether the job shift was entered as a duration in hours table */ is_hours_only_input?: boolean; /** * The IDs of the job codes associated with the job shift. */ job_codes_id?: Array; /** * The original end time of the job shift. If the endTime field has been rounded * then this contain the end time before the rounding occured. */ original_end_time?: string; /** * The original start time of the job shift. If the startTime field has been * rounded then this contain the start time before the rounding occured. */ original_start_time?: string; /** * The date of the job shift if using duration. */ start_date?: string; /** * The start time of the job shift. */ start_time?: string; } /** * The pay period associated with the time card. */ export interface PayPeriod { /** * The end date of the pay period. */ end_date?: string; /** * The ID of the pay schedule associated with the pay period. */ pay_schedule_id?: string; /** * The start date of the pay period. */ start_date?: string; } export interface ShiftInputValue { /** * The id of the relevant shift input */ shift_input_id: string; /** * The value of the shift input. */ value: unknown; /** * The id of the role that last added/updated this input. */ author_id?: string; } } export declare namespace TimeEntries { export { type TimeEntry as TimeEntry, type TimeEntryListResponse as TimeEntryListResponse, type TimeEntryCreateResponse as TimeEntryCreateResponse, type TimeEntryRetrieveResponse as TimeEntryRetrieveResponse, type TimeEntryUpdateResponse as TimeEntryUpdateResponse, type TimeEntryListResponsesPageCursorURL as TimeEntryListResponsesPageCursorURL, type TimeEntryListParams as TimeEntryListParams, type TimeEntryCreateParams as TimeEntryCreateParams, type TimeEntryRetrieveParams as TimeEntryRetrieveParams, type TimeEntryUpdateParams as TimeEntryUpdateParams, }; }