import { PrintProvider, ValidationInput, ValidationResult, QuoteInput, CreateOrderInput } from './interface.js';
import { PrintQuote, PrintOrder, OrderStatus } from '@book-print/shared';
export interface LuluConfig {
    clientKey: string;
    clientSecret: string;
    environment: 'sandbox' | 'production';
}
export declare class LuluPrintProvider implements PrintProvider {
    private config;
    name: string;
    private baseUrl;
    private accessToken;
    private tokenExpiresAt;
    constructor(config: LuluConfig);
    private getAuthToken;
    validateFiles(input: ValidationInput): Promise<ValidationResult>;
    getQuote(input: QuoteInput): Promise<PrintQuote>;
    createOrder(input: CreateOrderInput): Promise<PrintOrder>;
    getOrderStatus(orderId: string): Promise<{
        status: OrderStatus;
        trackingNumber?: string;
        trackingUrl?: string;
    }>;
}
//# sourceMappingURL=lulu-provider.d.ts.map