import * as IShared from '../../../shared/interface'; import { ScheduledPrintJob } from '../../../shared/entities/print'; export type Entity = ScheduledPrintJob; export declare const Route = "schedule_print_job"; export declare const UpperName = "SchedulePrintJob"; export declare const LowerName: string; export interface ICreateSchedulePrintJobRequest { printer_id: string; copies: number; sticker?: boolean; external_document_id?: string | undefined; external_url?: string | undefined; } export interface ICreateManySchedulePrintJobRequest { jobs: ICreateSchedulePrintJobRequest[]; } export interface IDispatchSchedulePrintJobRequest { computer_id: string; last_print_job_ids: string[]; } export interface IDispatchSchedulePrintJobResponse { npc_id: string; secret?: string | null; print_jobs: { id: string; moloni_json?: unknown; buffer?: string | null; external_url?: string | null; device_id: string; orientation: 'landscape' | 'portrait'; }[]; } export interface IRepository { dispatchSchedulePrintJob: (data: IDispatchSchedulePrintJobRequest) => Promise; findByOwner: (data: IShared.IFindByOwnerIdRequest) => Promise; create: (data: ICreateSchedulePrintJobRequest) => Promise; createMany: (data: ICreateManySchedulePrintJobRequest) => Promise; deleteOne: (params: IShared.IFindByIdRequest) => Promise; } export type IController = IShared.IEntityWithUserToken;