import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard.js";
import { createAssertEquals, createIs } from 'typia';
export const isKeetaNotificationAnchorListTargetsResponseJSON = (() => { const _io0 = input => false === input.ok && "string" === typeof input.error; const _io1 = input => true === input.ok && (Array.isArray(input.targets) && input.targets.every(elem => "object" === typeof elem && null !== elem && _io2(elem))); const _io2 = input => "string" === typeof input.id && ("object" === typeof input.channel && null !== input.channel && _io3(input.channel)); const _io3 = input => "string" === typeof input.appId && "string" === typeof input.fcmToken && "FCM" === input.type; const _iu0 = input => (() => {
    if (false === input.ok)
        return _io0(input);
    else if (true === input.ok)
        return _io1(input);
    else
        return false;
})(); return input => "object" === typeof input && null !== input && _iu0(input); })();
export const isKeetaNotificationAnchorRegisterTargetResponseJSON = (() => { const _io0 = input => true === input.ok && "string" === typeof input.id; const _io1 = input => false === input.ok && "string" === typeof input.error; const _iu0 = input => (() => {
    if (true === input.ok)
        return _io0(input);
    else if (false === input.ok)
        return _io1(input);
    else
        return false;
})(); return input => "object" === typeof input && null !== input && _iu0(input); })();
export const isKeetaNotificationAnchorDeleteTargetResponseJSON = (() => { const _io0 = input => true === input.ok; const _io1 = input => false === input.ok && "string" === typeof input.error; const _iu0 = input => (() => {
    if (true === input.ok)
        return _io0(input);
    else if (false === input.ok)
        return _io1(input);
    else
        return false;
})(); return input => "object" === typeof input && null !== input && _iu0(input); })();
export const isKeetaNotificationAnchorCreateSubscriptionResponseJSON = (() => { const _io0 = input => true === input.ok && "string" === typeof input.id; const _io1 = input => false === input.ok && "string" === typeof input.error; const _iu0 = input => (() => {
    if (true === input.ok)
        return _io0(input);
    else if (false === input.ok)
        return _io1(input);
    else
        return false;
})(); return input => "object" === typeof input && null !== input && _iu0(input); })();
export const isKeetaNotificationAnchorDeleteSubscriptionResponseJSON = (() => { const _io0 = input => true === input.ok; const _io1 = input => false === input.ok && "string" === typeof input.error; const _iu0 = input => (() => {
    if (true === input.ok)
        return _io0(input);
    else if (false === input.ok)
        return _io1(input);
    else
        return false;
})(); return input => "object" === typeof input && null !== input && _iu0(input); })();
export const isKeetaNotificationAnchorListSubscriptionsResponseJSON = (() => { const _io0 = input => false === input.ok && "string" === typeof input.error; const _io1 = input => true === input.ok && (Array.isArray(input.subscriptions) && input.subscriptions.every(elem => "object" === typeof elem && null !== elem && _io2(elem))); const _io2 = input => "string" === typeof input.id && ("object" === typeof input.subscription && null !== input.subscription && _io3(input.subscription)); const _io3 = input => "RECEIVE_FUNDS" === input.type && ("object" === typeof input.target && null !== input.target && _io4(input.target)) && (undefined === input.toAddress || "string" === typeof input.toAddress && (RegExp(/^keeta_am(.*)/).test(input.toAddress) || RegExp(/^keeta_an(.*)/).test(input.toAddress) || RegExp(/^keeta_ao(.*)/).test(input.toAddress) || RegExp(/^keeta_ap(.*)/).test(input.toAddress) || RegExp(/^tyblocks_am(.*)/).test(input.toAddress) || RegExp(/^tyblocks_an(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ao(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ap(.*)/).test(input.toAddress) || RegExp(/^keeta_aa(.*)/).test(input.toAddress) || RegExp(/^keeta_ab(.*)/).test(input.toAddress) || RegExp(/^keeta_ac(.*)/).test(input.toAddress) || RegExp(/^keeta_ad(.*)/).test(input.toAddress) || RegExp(/^tyblocks_aa(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ab(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ac(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ad(.*)/).test(input.toAddress) || RegExp(/^keeta_ae(.*)/).test(input.toAddress) || RegExp(/^keeta_af(.*)/).test(input.toAddress) || RegExp(/^keeta_ag(.*)/).test(input.toAddress) || RegExp(/^keeta_ah(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ae(.*)/).test(input.toAddress) || RegExp(/^tyblocks_af(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ag(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ah(.*)/).test(input.toAddress) || RegExp(/^keeta_ai(.*)/).test(input.toAddress) || RegExp(/^keeta_aj(.*)/).test(input.toAddress) || RegExp(/^keeta_ak(.*)/).test(input.toAddress) || RegExp(/^keeta_al(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ai(.*)/).test(input.toAddress) || RegExp(/^tyblocks_aj(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ak(.*)/).test(input.toAddress) || RegExp(/^tyblocks_al(.*)/).test(input.toAddress) || RegExp(/^keeta_at(.*)/).test(input.toAddress) || RegExp(/^keeta_ar(.*)/).test(input.toAddress) || RegExp(/^keeta_aq(.*)/).test(input.toAddress) || RegExp(/^keeta_as(.*)/).test(input.toAddress) || RegExp(/^tyblocks_at(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ar(.*)/).test(input.toAddress) || RegExp(/^tyblocks_aq(.*)/).test(input.toAddress) || RegExp(/^tyblocks_as(.*)/).test(input.toAddress) || RegExp(/^keeta_ay(.*)/).test(input.toAddress) || RegExp(/^keeta_az(.*)/).test(input.toAddress) || RegExp(/^keeta_a2(.*)/).test(input.toAddress) || RegExp(/^keeta_a3(.*)/).test(input.toAddress) || RegExp(/^tyblocks_ay(.*)/).test(input.toAddress) || RegExp(/^tyblocks_az(.*)/).test(input.toAddress) || RegExp(/^tyblocks_a2(.*)/).test(input.toAddress) || RegExp(/^tyblocks_a3(.*)/).test(input.toAddress) || RegExp(/^keeta_a4(.*)/).test(input.toAddress) || RegExp(/^keeta_a5(.*)/).test(input.toAddress) || RegExp(/^keeta_a6(.*)/).test(input.toAddress) || RegExp(/^keeta_a7(.*)/).test(input.toAddress) || RegExp(/^tyblocks_a4(.*)/).test(input.toAddress) || RegExp(/^tyblocks_a5(.*)/).test(input.toAddress) || RegExp(/^tyblocks_a6(.*)/).test(input.toAddress) || RegExp(/^tyblocks_a7(.*)/).test(input.toAddress))) && (undefined === input.locale || "string" === typeof input.locale); const _io4 = input => Array.isArray(input.ids) && input.ids.every(elem => "string" === typeof elem) && (undefined === input.provider || "string" === typeof input.provider); const _iu0 = input => (() => {
    if (false === input.ok)
        return _io0(input);
    else if (true === input.ok)
        return _io1(input);
    else
        return false;
})(); return input => "object" === typeof input && null !== input && _iu0(input); })();
export const assertNotificationChannelType = (() => { const __is = (input, _exceptionable = true) => "FCM" === input; let _errorFactory; return (input, errorFactory) => {
    if (false === __is(input)) {
        _errorFactory = errorFactory;
        ((input, _path, _exceptionable = true) => "FCM" === input || __typia_transform__assertGuard._assertGuard(true, {
            method: "createAssertEquals",
            path: _path + "",
            expected: "\"FCM\"",
            value: input
        }, _errorFactory))(input, "$input", true);
    }
    return input;
}; })();
export const assertNotificationSubscriptionType = (() => { const __is = (input, _exceptionable = true) => "RECEIVE_FUNDS" === input; let _errorFactory; return (input, errorFactory) => {
    if (false === __is(input)) {
        _errorFactory = errorFactory;
        ((input, _path, _exceptionable = true) => "RECEIVE_FUNDS" === input || __typia_transform__assertGuard._assertGuard(true, {
            method: "createAssertEquals",
            path: _path + "",
            expected: "\"RECEIVE_FUNDS\"",
            value: input
        }, _errorFactory))(input, "$input", true);
    }
    return input;
}; })();
// Back-compat: server-only request validators were moved to common.server.generated.ts
// to keep them out of client bundles. Re-exported here (named, tree-shakeable) so
// existing './common.generated.js' imports keep resolving.
export { assertKeetaNotificationAnchorListTargetsRequestJSON, assertKeetaNotificationAnchorRegisterTargetRequestJSON, assertKeetaNotificationAnchorDeleteTargetRequestJSON, assertKeetaNotificationAnchorCreateSubscriptionRequestJSON, assertKeetaNotificationAnchorDeleteSubscriptionRequestJSON, assertKeetaNotificationAnchorListSubscriptionsRequestJSON } from './common.server.generated.js';
//# sourceMappingURL=common.generated.js.map