//
//  S1CPCLPrinter.h
//  PrinterSDK
//
//  Created by ldc on 2025/9/7.
//  Copyright © 2025 XiamenHY. All rights reserved.
//

#import <PrinterSDK/S1V1ProtocolPrinter.h>
#import <PrinterSDK/S1Type.h>
#import <PrinterSDK/PTCommandCPCL.h>
#import <PrinterSDK/S1CPCLType.h>

typedef void (^S1CPCLResultBlock)(S1CPCLPrintResult, NSError * _Nullable);

NS_ASSUME_NONNULL_BEGIN

@interface S1CPCLPrinter : S1V1ProtocolPrinter

/// 使用不携带JobId的方式进行打印
/// - Parameters:
///   - command: 指令
///   - timeout: 数据发送完后打印完成超时时间
///   - completeHandler: 结果回调
///   - progressBlock: 发送进度
/// - Warning: 该接口仅部分机器支持，不支持时报超时错误
- (void)printWithoutJobId:(PTCommandCPCL *)command
                  timeout:(NSTimeInterval)timeout
                 complete:(S1CPCLResultBlock _Nullable)completeHandler
             sendProgress:(RYProgressBlock _Nullable)progressBlock;

@end

NS_ASSUME_NONNULL_END
