export interface OnfleetRecipient {
    name?: string;
    phone?: string;
    notes?: string;
    skipSMSNotifications?: boolean;
    skipPhoneNumberValidation?: boolean;
}
export interface OnfleetDestinationAddress {
    name?: string;
    number?: string;
    street?: string;
    apartment?: string;
    city?: string;
    state?: string;
    postalCode?: string;
    country?: string;
    unparsed?: string;
}
export interface OnfleetDestinationOptions {
    language?: string;
}
export interface OnfleetDestination {
    address: OnfleetDestinationAddress;
    location?: [number, number];
    notes?: string;
    options?: OnfleetDestinationOptions;
}
export interface OnfleetTask {
    merchant?: string;
    executor?: string;
    destination: OnfleetDestination;
    recipients: OnfleetRecipient[];
    completeAfter?: number;
    completeBefore?: number;
    pickupTask?: boolean;
    notes?: string;
    quantity?: number;
    serviceTime?: number;
}
export interface OnfleetTaskUpdate {
    merchant?: string;
    executor?: string;
    completeAfter?: number;
    completeBefore?: number;
    pickupTask?: boolean;
    notes?: string;
    quantity?: number;
    serviceTime?: number;
}
export interface OnfleetListTaskFilters {
    from?: number;
    to?: number;
    lastId?: string;
    state?: string;
    worker?: string;
    completeBeforeBefore?: number;
    completeAfterAfter?: number;
    dependencies?: string;
}
export interface OnfleetCloneOverrideTaskOptions {
    completeAfter?: number;
    completeBefore?: number;
    destination?: OnfleetDestination;
    notes?: string;
    pickupTask?: boolean;
    recipients?: OnfleetRecipient[];
    serviceTime?: number;
}
export interface OnfleetCloneTaskOptions {
    includeMetadata?: boolean;
    includeBarcodes?: boolean;
    includeDependencies?: boolean;
    overrides?: OnfleetCloneOverrideTaskOptions;
}
export interface OnfleetCloneTask {
    options?: OnfleetCloneTaskOptions;
}
export interface OnfleetTaskCompletionDetails {
    success: boolean;
    notes?: string;
}
export interface OnfleetTaskComplete {
    completionDetails: OnfleetTaskCompletionDetails;
}
export interface OnfleetAdmins {
    name?: string;
    email?: string;
    phone?: string;
    isReadOnly?: boolean;
}
export interface OnfleetHubs extends OnfleetDestination {
    name?: string;
    teams?: string[];
}
export interface OnfleetVehicle {
    type?: string;
    description?: string;
    licensePlate?: string;
    color?: string;
}
export interface OnfleetWorker {
    name?: string;
    phone?: string;
    vehicle?: OnfleetVehicle;
    teams?: string[];
    capacity?: number;
    displayName?: string;
}
export interface OnfleetWorkerFilter {
    [key: string]: string | undefined;
    filter?: string;
    teams?: string;
    states?: string;
    phones?: string;
    analytics?: string;
}
export interface OnfleetWorkerScheduleEntry {
    date?: string;
    timezone?: string;
    shifts?: [[number, number]];
}
export interface OnfleetWebhook {
    url?: string;
    name?: string;
    trigger?: number;
    threshold?: number;
}
export interface OnfleetTeams {
    name?: string;
    workers?: string[];
    managers?: string[];
    hub?: string;
    enableSelfAssignment?: boolean;
}
export interface OnfleetWorkerSchedule {
    entries: OnfleetWorkerScheduleEntry[];
}
export interface OnfleetWebhookMapping {
    key: number;
    name: string;
    value: string;
}
export interface OnfleetWebhooksMapping {
    [key: string]: OnfleetWebhookMapping;
}
export interface OnfleetWorkerEstimates {
    dropoffLocation?: string;
    pickupLocation?: string;
    pickupTime?: number;
    restrictedVehicleTypes?: string;
    serviceTime?: number;
}
export interface OnfleetTeamAutoDispatch {
    maxTasksPerRoute?: number;
    taskTimeWindow?: [number, number];
    scheduleTimeWindow?: [number, number];
    serviceTime?: number;
    routeEnd?: string;
    maxAllowedDelay?: number;
}
//# sourceMappingURL=interfaces.d.ts.map