//
//  S1Type.h
//  PrinterSDK
//
//  Created by ldc on 2025/6/19.
//  Copyright © 2025 Mellow. All rights reserved.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

typedef NS_ENUM(Byte, S1WiFiEncryption) {
    S1WiFiEncryptionOpen = 0,
    S1WiFiEncryptionWep = 1,
    S1WiFiEncryptionWpa2_psk = 2,
    S1WiFiEncryptionWpa_wpa2_psk = 3,
    S1WiFiEncryptionWpa_psk = 4,
    S1WiFiEncryptionWpa = 5,
    S1WiFiEncryptionWpa2 = 6,
    S1WiFiEncryptionSae = 7,
    S1WiFiEncryptionWpa3_wpa2_psk_mix = 8,
};

typedef NS_ENUM(Byte, S1V1ProtocolOtaStatus) {
    S1V1ProtocolOtaStatusOk = 0,
    S1V1ProtocolOtaStatusLengthError,
    S1V1ProtocolOtaStatusCrcError,
    S1V1ProtocolOtaStatusTimeOut,
    S1V1ProtocolOtaStatusWriteFail,
    S1V1ProtocolOtaStatusFail,
};

@protocol S1CmdGenerator <NSObject>

- (NSData *)generate;

@end

NS_ASSUME_NONNULL_END
