import type { FeedbackResponse, Package, PreviewPrintOrderRequest, RenderPrintOrderRequest, SendTestEmailRequest, Template, TemplateCreateRequest, TemplateUpdateRequest } from '@bringg/types';
import Entity from '../../Core/Entity';
import type Session from '../../Services/Identity/Session';
import { PostZPLPrinterRequest } from '../Templates.consts';
export default class TemplatesEntity extends Entity<Package> {
    constructor(session: Session);
    printZPLPDF(body: PostZPLPrinterRequest): Promise<any>;
    getAllTemplates(): Promise<Template[]>;
    getTemplateById(id: number): Promise<Template>;
    createTemplate(payload: TemplateCreateRequest): Promise<Template>;
    updateTemplate(id: number, payload: TemplateUpdateRequest): Promise<Template>;
    deleteTemplateById(id: number): Promise<FeedbackResponse>;
    sendTestEmail(payload: SendTestEmailRequest): Promise<FeedbackResponse>;
    preview(payload: PreviewPrintOrderRequest): Promise<string>;
    receipt(payload: RenderPrintOrderRequest): Promise<string>;
}
