import { EnumCurrency, JSONString } from "../../@types"; import { ACTION, ICOMMAND, IRESPONSE, RESULT } from "../../cmd-protocol"; import { baseParamsType, SupportedLanguage } from "../command/baseparams"; export declare enum MSettingNameEnum { CONVERSION_CHAT = "ConversionChat", HEATMAP_ENABLED = "HeatmapEnabled", HEATMAP_DESCRIPTION = "HeatmapDescription", LIVE_CHAT_PREVIEW = "LiveChatPreview", LOVENSE_TOY_REQUEST = "LovenseToyRequest", TICKET_SHOW_REQUEST = "TicketShowRequest", MESSENGER_PRICE = "MessengerPrice", VIDEO_CHAT_PRICE = "VideoChatPrice", PRIVATE_CHAT_PRICE = "PrivateChatPrice", VOYEUR_CHAT_PRICE = "VoyeurChatPrice", PRIVATE_C2C_CHAT_PRICE = "SingleC2CChatPrice", SOFT_CHAT_ENABLED = "SoftChatEnabled", VOYEUR_CHAT_ENABLED = "VoyeurChatEnabled", VOYEUR_CHAT_PRIVATE_AUDIO = "VoyeurChatPrivateAudio", FREE_CHAT_ENABLED = "FreeChatEnabled", PARTY_CHAT_ENABLED = "PartyChatEnabled", SERVICE0900_REQUEST = "Service0900Request", SERVICE0900_ENABLED = "Service0900Enabled", SERCIVE0900WEBSIP_ENABLED = "Service0900WebSipEnabled", SERVICE0900WEBSIP_VISIBLE = "Service0900WebSipVisible", SERVICE0900PHONE_ENABLED = "Service0900PhoneEnabled", SERVICE0900MOMENTUMSIP_ENABLED = "Service0900MomentumSipEnabled", MESSAGETEMPLATES_ENABLED = "MessageTemplatesEnabled", BUMPMESSAGING_ENABLED = "BumpMessagingEnabled", BABESTATION24TAB_VISIBLE = "BabeStation24TabVisible", BABESTATION24_ENABLED = "BabeStation24Enabled", MOBILEVIDEOCALL_REQUEST = "MobileVideoCallRequest", MOBILEVIDEOCALL_ENABLED = "MobileVideoCallEnabled" } export declare enum MSettingValueTypeEnum { FLOAT = "float", BOOL = "bool", ENUM = "enum", MULTILANGSTRING = "multiLangString" } export declare class MSetting { name: MSettingNameEnum; type: MSettingValueTypeEnum; isReadOnly: boolean; /** * @deprecated/obsolete */ isDisabled: boolean; /** * @deprecated/obsolete */ isOnlineChangeAllowed: boolean; } export declare class MSettingFloat extends MSetting { type: MSettingValueTypeEnum.FLOAT; currency: EnumCurrency | string; value: number; minValue: number; maxValue: number; range: number[] | null; step: number | null; } export declare class MSettingBool extends MSetting { type: MSettingValueTypeEnum.BOOL; value: boolean; } export declare enum RequestStateEnum { NOT_SET = "notSet", NOT_ALLOWED = "notAllowed", REQUESTED = "requested", ACCEPTED = "accepted", REJECTED = "rejected", LOCKED = "locked" } export declare class MSettingFeatureRequest extends MSetting { type: MSettingValueTypeEnum.ENUM; value: RequestStateEnum; requestDate: Date | null; nextPossibleRequestDate: Date | null; lockedUntil: Date | null; } export declare class LanguageText { lang: SupportedLanguage; text: string | null; } export declare class MSettingMultiLangString extends MSetting { type: MSettingValueTypeEnum.MULTILANGSTRING; requiredLangs: SupportedLanguage[]; value: LanguageText[]; minLength: number | null; maxLength: number | null; } /** if one of feilds is missing, so the Settig is not applicable to this account */ export declare class MSettings { fields: { [MSettingNameEnum.CONVERSION_CHAT]?: MSettingBool; [MSettingNameEnum.HEATMAP_ENABLED]?: MSettingBool; [MSettingNameEnum.HEATMAP_DESCRIPTION]?: MSettingMultiLangString; [MSettingNameEnum.LIVE_CHAT_PREVIEW]?: MSettingBool; [MSettingNameEnum.LOVENSE_TOY_REQUEST]?: MSettingFeatureRequest; [MSettingNameEnum.TICKET_SHOW_REQUEST]?: MSettingFeatureRequest; [MSettingNameEnum.SERVICE0900_REQUEST]?: MSettingFeatureRequest; [MSettingNameEnum.MESSENGER_PRICE]?: MSettingFloat; [MSettingNameEnum.VIDEO_CHAT_PRICE]?: MSettingFloat; [MSettingNameEnum.PRIVATE_CHAT_PRICE]?: MSettingFloat; [MSettingNameEnum.VOYEUR_CHAT_PRICE]?: MSettingFloat; [MSettingNameEnum.PRIVATE_C2C_CHAT_PRICE]?: MSettingFloat; [MSettingNameEnum.SOFT_CHAT_ENABLED]?: MSettingBool; [MSettingNameEnum.VOYEUR_CHAT_ENABLED]?: MSettingBool; [MSettingNameEnum.VOYEUR_CHAT_PRIVATE_AUDIO]?: MSettingBool; [MSettingNameEnum.FREE_CHAT_ENABLED]?: MSettingBool; [MSettingNameEnum.PARTY_CHAT_ENABLED]?: MSettingBool; [MSettingNameEnum.SERVICE0900_ENABLED]?: MSettingBool; [MSettingNameEnum.SERCIVE0900WEBSIP_ENABLED]?: MSettingBool; [MSettingNameEnum.SERVICE0900WEBSIP_VISIBLE]?: MSettingBool; [MSettingNameEnum.SERVICE0900PHONE_ENABLED]?: MSettingBool; [MSettingNameEnum.MESSAGETEMPLATES_ENABLED]?: MSettingBool; [MSettingNameEnum.SERVICE0900MOMENTUMSIP_ENABLED]?: MSettingBool; [MSettingNameEnum.MESSAGETEMPLATES_ENABLED]?: MSettingBool; [MSettingNameEnum.BUMPMESSAGING_ENABLED]?: MSettingBool; [MSettingNameEnum.BABESTATION24TAB_VISIBLE]?: MSettingBool; [MSettingNameEnum.BABESTATION24_ENABLED]?: MSettingBool; [MSettingNameEnum.MOBILEVIDEOCALL_REQUEST]?: MSettingFeatureRequest; [MSettingNameEnum.MOBILEVIDEOCALL_ENABLED]?: MSettingBool; }; } /** * Get command */ export declare class CMDP_SGETMSETTINGS implements ICOMMAND { action: ACTION; params: baseParamsType; } /** * Get command response */ export declare class CMDP_SGETMSETTINGS_RESPONSE extends CMDP_SGETMSETTINGS implements IRESPONSE { result: RESULT; commands: ICOMMAND[]; values: { mSettings: JSONString; }; } /** * set command, * the settingValue is JSONString of value for settingName */ export declare class CMDP_SSETMSETTING implements ICOMMAND { action: ACTION; params: baseParamsType & { settingName: MSettingNameEnum; settingValue: string; }; } /** * Set command response */ export declare class CMDP_SSETMSETTING_RESPONSE extends CMDP_SSETMSETTING implements IRESPONSE { result: RESULT; commands: ICOMMAND[]; values: { mSettings: JSONString; }; } /** NOOP update command */ export declare class CMDC_MSETTINGS implements ICOMMAND { action: ACTION; params: { mSettings: JSONString; }; } export declare class CMDP_SSETMSETTINGS implements ICOMMAND { action: ACTION; params: baseParamsType & { mSettings: JSONString; }; } /** * Set command response */ export declare class CMDP_SSETMSETTINGS_RESPONSE extends CMDP_SSETMSETTINGS implements IRESPONSE { result: RESULT; commands: ICOMMAND[]; values: { mSettings: JSONString; }; }