/*

 * Copyright (c) 2023-2026 Huawei Device Co., Ltd.

 * Licensed under the Apache License, Version 2.0 (the "License");

 * you may not use this file except in compliance with the License.

 * You may obtain a copy of the License at

 *

 *     http://www.apache.org/licenses/LICENSE-2.0

 *

 * Unless required by applicable law or agreed to in writing, software

 * distributed under the License is distributed on an "AS IS" BASIS,

 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

 * See the License for the specific language governing permissions and

 * limitations under the License.

 */



#ifndef OHOS_GLOBAL_I18N_I18N_TYPES_H

#define OHOS_GLOBAL_I18N_I18N_TYPES_H



namespace OHOS {

namespace Global {

namespace I18n {

enum I18nErrorCode {

    NO_PERMISSION = -3,

    INVALID_PARAMETER = -2,

    FAILED = -1,

    SUCCESS = 0,

    INVALID_LOCALE_TAG = 6,

    INVALID_NUMBER_FORMAT_SKELETON = 23,

    INVALID_DATE_TIME_FORMAT_SKELETON = 24,

    INVALID_DATE_TIME_FORMAT_PATTERN = 25,

    INVALID_PARAM_INTL = 26,

    MISSING_PARAM = 27

};



enum I18nNormalizerMode {

    NFC = 1,

    NFD,

    NFKC,

    NFKD

};



enum TemperatureType {

    CELSIUS = 1,

    FAHRENHEIT = 2,

    KELVIN = 3,

};



enum WeekDay {

    MON = 1,

    TUE = 2,

    WED = 3,

    THU = 4,

    FRI = 5,

    SAT = 6,

    SUN = 7,

};



enum class LocaleType {

    INVALID = 0,

    BUILTINS_LOCALE = 1,

    LOCALE_INFO = 2,

};

}

}

}

#endif