@temboplus/frontend-core 0.4.4 → 1.0.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +62 -214
- package/dist/coverage/coverage.types.d.ts +24 -0
- package/dist/coverage/index.d.ts +3 -0
- package/dist/coverage/tembo-coverage.d.ts +59 -0
- package/dist/domain/amount/amount.d.ts +476 -0
- package/dist/domain/amount/amount.helpers.d.ts +64 -0
- package/dist/domain/amount/amount.schema.d.ts +34 -0
- package/dist/domain/amount/index.d.ts +4 -0
- package/dist/domain/bank/bank.d.ts +59 -0
- package/dist/domain/bank/bank.helpers.d.ts +34 -0
- package/dist/domain/bank/bank.schema.d.ts +39 -0
- package/dist/domain/bank/bank.types.d.ts +9 -0
- package/dist/domain/bank/index.d.ts +4 -0
- package/dist/domain/channel/channel.d.ts +40 -0
- package/dist/domain/channel/channel.enums.d.ts +14 -0
- package/dist/domain/channel/channel.types.d.ts +12 -0
- package/dist/domain/channel/index.d.ts +3 -0
- package/dist/domain/country/country.d.ts +73 -0
- package/dist/domain/country/country.enums.d.ts +45 -0
- package/dist/domain/country/country.helpers.d.ts +6 -0
- package/dist/domain/country/country.schema.d.ts +73 -0
- package/{script/src/models/country/types.d.ts → dist/domain/country/country.types.d.ts} +18 -1
- package/dist/domain/country/index.d.ts +4 -0
- package/dist/domain/currency/currency.d.ts +62 -0
- package/dist/domain/currency/currency.helpers.d.ts +4 -0
- package/dist/domain/currency/currency.schema.d.ts +24 -0
- package/{script/src/models/currency/types.d.ts → dist/domain/currency/currency.types.d.ts} +7 -2
- package/dist/domain/currency/index.d.ts +4 -0
- package/{esm/src/models → dist/domain}/index.d.ts +3 -2
- package/dist/domain/mobile-money-provider/index.d.ts +4 -0
- package/dist/domain/mobile-money-provider/mobile-money-provider.d.ts +53 -0
- package/dist/domain/mobile-money-provider/mobile-money-provider.helpers.d.ts +5 -0
- package/dist/domain/mobile-money-provider/mobile-money-provider.schema.d.ts +22 -0
- package/dist/domain/mobile-money-provider/mobile-money-provider.types.d.ts +21 -0
- package/dist/domain/phone-number/index.d.ts +4 -0
- package/dist/domain/phone-number/phone-number.d.ts +57 -0
- package/dist/domain/phone-number/phone-number.helpers.d.ts +67 -0
- package/dist/domain/phone-number/phone-number.parser.d.ts +43 -0
- package/dist/domain/phone-number/phone-number.schema.d.ts +21 -0
- package/dist/domain/phone-number/phone-number.types.d.ts +72 -0
- package/dist/factories/amount.factory.d.ts +50 -0
- package/dist/factories/bank.factory.d.ts +47 -0
- package/dist/factories/country.factory.d.ts +40 -0
- package/dist/factories/currency.factory.d.ts +40 -0
- package/dist/factories/index.d.ts +7 -0
- package/dist/factories/mobile-money-provider.factory.d.ts +43 -0
- package/dist/factories/phone-number.factory.d.ts +31 -0
- package/dist/factories/transaction-limit.factory.d.ts +36 -0
- package/dist/index.cjs.js +2 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.esm.js +2 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/registries/bank.registry.d.ts +36 -0
- package/dist/registries/country.registry.d.ts +45 -0
- package/dist/registries/currency.registry.d.ts +33 -0
- package/dist/registries/index.d.ts +5 -0
- package/dist/registries/mobile-money-provider.registry.d.ts +48 -0
- package/dist/registries/transaction-limit.registry.d.ts +30 -0
- package/dist/repositories/bank.repository.d.ts +30 -0
- package/dist/repositories/country.repository.d.ts +31 -0
- package/dist/repositories/currency.repository.d.ts +28 -0
- package/dist/repositories/index.d.ts +5 -0
- package/dist/repositories/mobile-money-provider.repository.d.ts +53 -0
- package/dist/repositories/transaction-limit.repository.d.ts +31 -0
- package/{script/src → dist}/utils/id.d.ts +7 -3
- package/{esm/src/utils/index.js → dist/utils/index.d.ts} +1 -0
- package/dist/utils/logger.d.ts +2 -0
- package/dist/utils/text.d.ts +103 -0
- package/{script/src → dist}/utils/time.d.ts +9 -4
- package/package.json +46 -23
- package/LICENSE +0 -7
- package/esm/_dnt.test_shims.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/_constants.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/_diff.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/_format.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_almost_equals.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_array_includes.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_equals.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_exists.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_false.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_greater.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_greater_or_equal.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_instance_of.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_is_error.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_less.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_less_or_equal.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_match.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_not_equals.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_not_instance_of.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_not_match.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_not_strict_equals.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_object_match.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_rejects.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_strict_equals.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_string_includes.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assert_throws.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/assertion_error.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/equal.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/fail.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/mod.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/unimplemented.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/assert/unreachable.d.ts.map +0 -1
- package/esm/deps/deno.land/std@0.217.0/fmt/colors.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/assertion_state.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/testing/1.0.9/_test_suite.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/testing/1.0.9/bdd.d.ts.map +0 -1
- package/esm/mod.d.ts +0 -5
- package/esm/mod.d.ts.map +0 -1
- package/esm/mod.js +0 -4
- package/esm/package.json +0 -3
- package/esm/src/config/config_service.d.ts +0 -11
- package/esm/src/config/config_service.d.ts.map +0 -1
- package/esm/src/config/config_service.js +0 -19
- package/esm/src/config/index.d.ts +0 -2
- package/esm/src/config/index.d.ts.map +0 -1
- package/esm/src/config/index.js +0 -1
- package/esm/src/data/banks_tz.d.ts +0 -7
- package/esm/src/data/banks_tz.d.ts.map +0 -1
- package/esm/src/data/banks_tz.js +0 -197
- package/esm/src/data/countries.d.ts +0 -39
- package/esm/src/data/countries.d.ts.map +0 -1
- package/esm/src/data/countries.js +0 -2475
- package/esm/src/data/currencies.d.ts +0 -1901
- package/esm/src/data/currencies.d.ts.map +0 -1
- package/esm/src/data/currencies.js +0 -1073
- package/esm/src/data/phone_patterns.d.ts +0 -3809
- package/esm/src/data/phone_patterns.d.ts.map +0 -1
- package/esm/src/data/phone_patterns.js +0 -2325
- package/esm/src/models/amount/amount.d.ts +0 -53
- package/esm/src/models/amount/amount.d.ts.map +0 -1
- package/esm/src/models/amount/amount.js +0 -190
- package/esm/src/models/amount/amount.test.d.ts.map +0 -1
- package/esm/src/models/amount/antd_validator.d.ts +0 -40
- package/esm/src/models/amount/antd_validator.d.ts.map +0 -1
- package/esm/src/models/amount/antd_validator.js +0 -58
- package/esm/src/models/amount/antd_validator.test.d.ts.map +0 -1
- package/esm/src/models/amount/index.d.ts +0 -3
- package/esm/src/models/amount/index.d.ts.map +0 -1
- package/esm/src/models/amount/index.js +0 -2
- package/esm/src/models/bank/antd_validator.d.ts +0 -11
- package/esm/src/models/bank/antd_validator.d.ts.map +0 -1
- package/esm/src/models/bank/antd_validator.js +0 -26
- package/esm/src/models/bank/antd_validator.test.d.ts.map +0 -1
- package/esm/src/models/bank/bank.d.ts +0 -257
- package/esm/src/models/bank/bank.d.ts.map +0 -1
- package/esm/src/models/bank/bank.js +0 -450
- package/esm/src/models/bank/bank.test.d.ts.map +0 -1
- package/esm/src/models/bank/index.d.ts +0 -5
- package/esm/src/models/bank/index.d.ts.map +0 -1
- package/esm/src/models/bank/index.js +0 -4
- package/esm/src/models/bank/types.d.ts +0 -7
- package/esm/src/models/bank/types.d.ts.map +0 -1
- package/esm/src/models/bank/types.js +0 -45
- package/esm/src/models/bank/utils.d.ts +0 -8
- package/esm/src/models/bank/utils.d.ts.map +0 -1
- package/esm/src/models/bank/utils.js +0 -9
- package/esm/src/models/country/country.d.ts +0 -822
- package/esm/src/models/country/country.d.ts.map +0 -1
- package/esm/src/models/country/country.js +0 -737
- package/esm/src/models/country/country.test.d.ts.map +0 -1
- package/esm/src/models/country/index.d.ts +0 -4
- package/esm/src/models/country/index.d.ts.map +0 -1
- package/esm/src/models/country/index.js +0 -3
- package/esm/src/models/country/types.d.ts +0 -63
- package/esm/src/models/country/types.d.ts.map +0 -1
- package/esm/src/models/country/types.js +0 -105
- package/esm/src/models/country/utils.d.ts +0 -21
- package/esm/src/models/country/utils.d.ts.map +0 -1
- package/esm/src/models/country/utils.js +0 -25
- package/esm/src/models/currency/currency.d.ts +0 -465
- package/esm/src/models/currency/currency.d.ts.map +0 -1
- package/esm/src/models/currency/currency.js +0 -471
- package/esm/src/models/currency/currency.test.d.ts.map +0 -1
- package/esm/src/models/currency/index.d.ts +0 -4
- package/esm/src/models/currency/index.d.ts.map +0 -1
- package/esm/src/models/currency/index.js +0 -3
- package/esm/src/models/currency/types.d.ts +0 -21
- package/esm/src/models/currency/types.d.ts.map +0 -1
- package/esm/src/models/currency/types.js +0 -28
- package/esm/src/models/currency/utils.d.ts +0 -8
- package/esm/src/models/currency/utils.d.ts.map +0 -1
- package/esm/src/models/currency/utils.js +0 -9
- package/esm/src/models/index.d.ts.map +0 -1
- package/esm/src/models/index.js +0 -5
- package/esm/src/models/phone_number/format.d.ts +0 -13
- package/esm/src/models/phone_number/format.d.ts.map +0 -1
- package/esm/src/models/phone_number/format.js +0 -13
- package/esm/src/models/phone_number/global/phone_number.d.ts +0 -162
- package/esm/src/models/phone_number/global/phone_number.d.ts.map +0 -1
- package/esm/src/models/phone_number/global/phone_number.js +0 -459
- package/esm/src/models/phone_number/global/phone_number.test.d.ts.map +0 -1
- package/esm/src/models/phone_number/global/service.d.ts +0 -267
- package/esm/src/models/phone_number/global/service.d.ts.map +0 -1
- package/esm/src/models/phone_number/global/service.js +0 -498
- package/esm/src/models/phone_number/global/service.test.d.ts.map +0 -1
- package/esm/src/models/phone_number/index.d.ts +0 -6
- package/esm/src/models/phone_number/index.d.ts.map +0 -1
- package/esm/src/models/phone_number/index.js +0 -5
- package/esm/src/models/phone_number/tz/antd_validator.d.ts +0 -77
- package/esm/src/models/phone_number/tz/antd_validator.d.ts.map +0 -1
- package/esm/src/models/phone_number/tz/antd_validator.js +0 -90
- package/esm/src/models/phone_number/tz/antdvalidator.test.d.ts.map +0 -1
- package/esm/src/models/phone_number/tz/network_operator.d.ts +0 -30
- package/esm/src/models/phone_number/tz/network_operator.d.ts.map +0 -1
- package/esm/src/models/phone_number/tz/network_operator.js +0 -47
- package/esm/src/models/phone_number/tz/phone_number.d.ts +0 -141
- package/esm/src/models/phone_number/tz/phone_number.d.ts.map +0 -1
- package/esm/src/models/phone_number/tz/phone_number.js +0 -290
- package/esm/src/models/phone_number/tz/phone_number.test.d.ts.map +0 -1
- package/esm/src/reports/index.d.ts +0 -2
- package/esm/src/reports/index.d.ts.map +0 -1
- package/esm/src/reports/index.js +0 -1
- package/esm/src/reports/report_manager.d.ts +0 -146
- package/esm/src/reports/report_manager.d.ts.map +0 -1
- package/esm/src/reports/report_manager.js +0 -326
- package/esm/src/utils/id.d.ts +0 -12
- package/esm/src/utils/id.d.ts.map +0 -1
- package/esm/src/utils/id.js +0 -19
- package/esm/src/utils/index.d.ts +0 -4
- package/esm/src/utils/index.d.ts.map +0 -1
- package/esm/src/utils/text.d.ts +0 -32
- package/esm/src/utils/text.d.ts.map +0 -1
- package/esm/src/utils/text.js +0 -68
- package/esm/src/utils/text.test.d.ts.map +0 -1
- package/esm/src/utils/time.d.ts +0 -21
- package/esm/src/utils/time.d.ts.map +0 -1
- package/esm/src/utils/time.js +0 -34
- package/script/_dnt.test_shims.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/_constants.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/_diff.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/_format.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_almost_equals.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_array_includes.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_equals.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_exists.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_false.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_greater.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_greater_or_equal.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_instance_of.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_is_error.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_less.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_less_or_equal.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_match.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_not_equals.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_not_instance_of.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_not_match.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_not_strict_equals.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_object_match.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_rejects.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_strict_equals.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_string_includes.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assert_throws.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/assertion_error.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/equal.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/fail.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/mod.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/unimplemented.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/assert/unreachable.d.ts.map +0 -1
- package/script/deps/deno.land/std@0.217.0/fmt/colors.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/almost_equals.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/array_includes.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/assert.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/assertion_error.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/equal.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/equals.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/exists.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/fail.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/false.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/greater.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/greater_or_equal.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/instance_of.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/is_error.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/less.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/less_or_equal.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/match.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/mod.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/not_equals.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/not_instance_of.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/not_match.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/not_strict_equals.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/object_match.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/rejects.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/strict_equals.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/string_includes.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/throws.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/unimplemented.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/assert/1.0.10/unreachable.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/assertion_state.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/build_message.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/diff.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/diff_str.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/format.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/styles.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.5/types.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/testing/1.0.9/_test_suite.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/testing/1.0.9/bdd.d.ts.map +0 -1
- package/script/mod.d.ts +0 -5
- package/script/mod.d.ts.map +0 -1
- package/script/mod.js +0 -20
- package/script/package.json +0 -3
- package/script/src/config/config_service.d.ts +0 -11
- package/script/src/config/config_service.d.ts.map +0 -1
- package/script/src/config/config_service.js +0 -23
- package/script/src/config/index.d.ts +0 -2
- package/script/src/config/index.d.ts.map +0 -1
- package/script/src/config/index.js +0 -17
- package/script/src/data/banks_tz.d.ts +0 -7
- package/script/src/data/banks_tz.d.ts.map +0 -1
- package/script/src/data/banks_tz.js +0 -199
- package/script/src/data/countries.d.ts +0 -39
- package/script/src/data/countries.d.ts.map +0 -1
- package/script/src/data/countries.js +0 -2477
- package/script/src/data/currencies.d.ts +0 -1901
- package/script/src/data/currencies.d.ts.map +0 -1
- package/script/src/data/currencies.js +0 -1075
- package/script/src/data/phone_patterns.d.ts +0 -3809
- package/script/src/data/phone_patterns.d.ts.map +0 -1
- package/script/src/data/phone_patterns.js +0 -2327
- package/script/src/models/amount/amount.d.ts +0 -53
- package/script/src/models/amount/amount.d.ts.map +0 -1
- package/script/src/models/amount/amount.js +0 -194
- package/script/src/models/amount/amount.test.d.ts.map +0 -1
- package/script/src/models/amount/antd_validator.d.ts +0 -40
- package/script/src/models/amount/antd_validator.d.ts.map +0 -1
- package/script/src/models/amount/antd_validator.js +0 -62
- package/script/src/models/amount/antd_validator.test.d.ts.map +0 -1
- package/script/src/models/amount/index.d.ts +0 -3
- package/script/src/models/amount/index.d.ts.map +0 -1
- package/script/src/models/amount/index.js +0 -18
- package/script/src/models/bank/antd_validator.d.ts +0 -11
- package/script/src/models/bank/antd_validator.d.ts.map +0 -1
- package/script/src/models/bank/antd_validator.js +0 -30
- package/script/src/models/bank/antd_validator.test.d.ts.map +0 -1
- package/script/src/models/bank/bank.d.ts +0 -257
- package/script/src/models/bank/bank.d.ts.map +0 -1
- package/script/src/models/bank/bank.js +0 -458
- package/script/src/models/bank/bank.test.d.ts.map +0 -1
- package/script/src/models/bank/index.d.ts +0 -5
- package/script/src/models/bank/index.d.ts.map +0 -1
- package/script/src/models/bank/index.js +0 -20
- package/script/src/models/bank/types.d.ts +0 -7
- package/script/src/models/bank/types.d.ts.map +0 -1
- package/script/src/models/bank/types.js +0 -48
- package/script/src/models/bank/utils.d.ts +0 -8
- package/script/src/models/bank/utils.d.ts.map +0 -1
- package/script/src/models/bank/utils.js +0 -12
- package/script/src/models/country/country.d.ts +0 -822
- package/script/src/models/country/country.d.ts.map +0 -1
- package/script/src/models/country/country.js +0 -745
- package/script/src/models/country/country.test.d.ts.map +0 -1
- package/script/src/models/country/index.d.ts +0 -4
- package/script/src/models/country/index.d.ts.map +0 -1
- package/script/src/models/country/index.js +0 -19
- package/script/src/models/country/types.d.ts.map +0 -1
- package/script/src/models/country/types.js +0 -108
- package/script/src/models/country/utils.d.ts +0 -21
- package/script/src/models/country/utils.d.ts.map +0 -1
- package/script/src/models/country/utils.js +0 -30
- package/script/src/models/currency/currency.d.ts +0 -465
- package/script/src/models/currency/currency.d.ts.map +0 -1
- package/script/src/models/currency/currency.js +0 -479
- package/script/src/models/currency/currency.test.d.ts.map +0 -1
- package/script/src/models/currency/index.d.ts +0 -4
- package/script/src/models/currency/index.d.ts.map +0 -1
- package/script/src/models/currency/index.js +0 -19
- package/script/src/models/currency/types.d.ts.map +0 -1
- package/script/src/models/currency/types.js +0 -31
- package/script/src/models/currency/utils.d.ts +0 -8
- package/script/src/models/currency/utils.d.ts.map +0 -1
- package/script/src/models/currency/utils.js +0 -12
- package/script/src/models/index.d.ts +0 -6
- package/script/src/models/index.d.ts.map +0 -1
- package/script/src/models/index.js +0 -21
- package/script/src/models/phone_number/format.d.ts +0 -13
- package/script/src/models/phone_number/format.d.ts.map +0 -1
- package/script/src/models/phone_number/format.js +0 -16
- package/script/src/models/phone_number/global/phone_number.d.ts +0 -162
- package/script/src/models/phone_number/global/phone_number.d.ts.map +0 -1
- package/script/src/models/phone_number/global/phone_number.js +0 -463
- package/script/src/models/phone_number/global/phone_number.test.d.ts.map +0 -1
- package/script/src/models/phone_number/global/service.d.ts +0 -267
- package/script/src/models/phone_number/global/service.d.ts.map +0 -1
- package/script/src/models/phone_number/global/service.js +0 -506
- package/script/src/models/phone_number/global/service.test.d.ts.map +0 -1
- package/script/src/models/phone_number/index.d.ts +0 -6
- package/script/src/models/phone_number/index.d.ts.map +0 -1
- package/script/src/models/phone_number/index.js +0 -21
- package/script/src/models/phone_number/tz/antd_validator.d.ts +0 -77
- package/script/src/models/phone_number/tz/antd_validator.d.ts.map +0 -1
- package/script/src/models/phone_number/tz/antd_validator.js +0 -94
- package/script/src/models/phone_number/tz/antdvalidator.test.d.ts.map +0 -1
- package/script/src/models/phone_number/tz/network_operator.d.ts +0 -30
- package/script/src/models/phone_number/tz/network_operator.d.ts.map +0 -1
- package/script/src/models/phone_number/tz/network_operator.js +0 -50
- package/script/src/models/phone_number/tz/phone_number.d.ts +0 -141
- package/script/src/models/phone_number/tz/phone_number.d.ts.map +0 -1
- package/script/src/models/phone_number/tz/phone_number.js +0 -294
- package/script/src/models/phone_number/tz/phone_number.test.d.ts.map +0 -1
- package/script/src/reports/index.d.ts +0 -2
- package/script/src/reports/index.d.ts.map +0 -1
- package/script/src/reports/index.js +0 -17
- package/script/src/reports/report_manager.d.ts +0 -146
- package/script/src/reports/report_manager.d.ts.map +0 -1
- package/script/src/reports/report_manager.js +0 -336
- package/script/src/utils/id.d.ts.map +0 -1
- package/script/src/utils/id.js +0 -23
- package/script/src/utils/index.d.ts +0 -4
- package/script/src/utils/index.d.ts.map +0 -1
- package/script/src/utils/index.js +0 -19
- package/script/src/utils/text.d.ts +0 -32
- package/script/src/utils/text.d.ts.map +0 -1
- package/script/src/utils/text.js +0 -75
- package/script/src/utils/text.test.d.ts.map +0 -1
- package/script/src/utils/time.d.ts.map +0 -1
- package/script/src/utils/time.js +0 -39
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const TZBankSWIFTCodeSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
3
|
+
export declare const KEBankSWIFTCodeSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
4
|
+
/**
|
|
5
|
+
* Zod schema for Bank JSON serialization
|
|
6
|
+
* This schema validates the JSON representation of a Bank instance
|
|
7
|
+
*/
|
|
8
|
+
export declare const BankJSONSchema: z.ZodEffects<z.ZodObject<{
|
|
9
|
+
/** The BIC code for the bank's head office */
|
|
10
|
+
bic: z.ZodOptional<z.ZodString>;
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated Use `bic` instead.
|
|
13
|
+
*/
|
|
14
|
+
swiftCode: z.ZodOptional<z.ZodString>;
|
|
15
|
+
/** The ISO 3166-1 alpha-2 country code */
|
|
16
|
+
countryCode: z.ZodString;
|
|
17
|
+
/** Version for future compatibility */
|
|
18
|
+
version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
19
|
+
}, "strip", z.ZodTypeAny, {
|
|
20
|
+
version: string;
|
|
21
|
+
countryCode: string;
|
|
22
|
+
bic?: string | undefined;
|
|
23
|
+
swiftCode?: string | undefined;
|
|
24
|
+
}, {
|
|
25
|
+
countryCode: string;
|
|
26
|
+
version?: string | undefined;
|
|
27
|
+
bic?: string | undefined;
|
|
28
|
+
swiftCode?: string | undefined;
|
|
29
|
+
}>, {
|
|
30
|
+
version: string;
|
|
31
|
+
countryCode: string;
|
|
32
|
+
bic?: string | undefined;
|
|
33
|
+
swiftCode?: string | undefined;
|
|
34
|
+
}, {
|
|
35
|
+
countryCode: string;
|
|
36
|
+
version?: string | undefined;
|
|
37
|
+
bic?: string | undefined;
|
|
38
|
+
swiftCode?: string | undefined;
|
|
39
|
+
}>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const KEBankSwiftCodesSet: Set<string>;
|
|
2
|
+
export declare const TZBankSwiftCodesSet: Set<string>;
|
|
3
|
+
export type KEBankSwiftCode = "ABNGKENA" | "ABCLKENA" | "AFRIKENX" | "BARBKENA" | "CRMFKENA" | "CHFIKENX" | "CITIKENA" | "KCOOKENA" | "MYBKKENA" | "CONKKENA" | "CRBTKENA" | "DEVKKENA" | "DTKEKENA" | "DUIBKENA" | "ECOCKENA" | "EQBLKENA" | "FABLKENA" | "FAUMKENA" | "GTBIKENA" | "GUARKENA" | "GAFRKENA" | "HBZUKENA" | "HFCOKENA" | "IMBLKENA" | "KWMIKENX" | "CIFIKENA" | "MORBKENA" | "MIEKKENA" | "NBKEKENX" | "CBAFKENX" | "PAUTKENA" | "IFCBKENA" | "PRIEKENX" | "SBMKKENA" | "SIDNKENA" | "SBICKENX" | "SCBLKENX" | "VICMKENA";
|
|
4
|
+
export type TZBankSwiftCode = "CORUTZTZ" | "PBZATZTZ" | "SCBLTZTX" | "SBICTZTX" | "CITITZTZ" | "EUAFTZTZ" | "DTKETZTZ" | "AKCOTZTZ" | "EXTNTZTZ" | "KLMJTZTZ" | "NLCBTZTX" | "NMIBTZTZ" | "KCBLTZTZ" | "HABLTZTZ" | "BKMYTZTZ" | "BARCTZTZ" | "IMBLTZTZ" | "CBAFTZTZ" | "DASUTZTZ" | "BARBTZTZ" | "AZANTZTZ" | "UCCTTZTZ" | "FMBZTZTX" | "ACTZTZTZ" | "BKIDTZTZ" | "UNAFTZTZ" | "MKCBTZTZ" | "ECOCTZTZ" | "MWCBTZTZ" | "FIRNTZTX" | "AMNNTZTZ" | "EQBLTZTZ" | "TAPBTZTZ" | "MBTLTZTZ" | "CNRBTZTZ" | "MWCOTZTZ" | "GTBITZTZ" | "YETMTZTZ" | "CDSHTZTZ";
|
|
5
|
+
export type BankSwiftCode = KEBankSwiftCode | TZBankSwiftCode;
|
|
6
|
+
/**
|
|
7
|
+
* Type guard to check whether a string is a known bank SWIFT/BIC code.
|
|
8
|
+
*/
|
|
9
|
+
export declare function isBankSwiftCode(code: string): code is BankSwiftCode;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ChannelType, TransactionDirection } from "./channel.enums.js";
|
|
2
|
+
import type { ChannelData } from "./channel.types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Plain-object representation of a Channel containing the full state.
|
|
5
|
+
*/
|
|
6
|
+
export interface ChannelObject extends ChannelData {
|
|
7
|
+
channelType: ChannelType;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Normalized payment channel returned by TemboCoverage.
|
|
11
|
+
*
|
|
12
|
+
* A channel can be a bank or a mobile-money provider. The common shape lets
|
|
13
|
+
* consumers list payout and collection options without branching on every model.
|
|
14
|
+
*/
|
|
15
|
+
export declare class Channel {
|
|
16
|
+
readonly id: string;
|
|
17
|
+
readonly type: ChannelType;
|
|
18
|
+
readonly countryCode: ChannelData["countryCode"];
|
|
19
|
+
readonly displayName: string;
|
|
20
|
+
readonly directions: TransactionDirection[];
|
|
21
|
+
readonly providerId?: string;
|
|
22
|
+
readonly bankBic?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Creates an immutable channel value from bank or provider coverage data.
|
|
25
|
+
*/
|
|
26
|
+
constructor(data: ChannelData);
|
|
27
|
+
/**
|
|
28
|
+
* Checks whether this channel supports a requested transaction direction.
|
|
29
|
+
*/
|
|
30
|
+
supportsDirection(direction: TransactionDirection): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Alias for callers that prefer the explicit coverage naming.
|
|
33
|
+
*/
|
|
34
|
+
get channelType(): ChannelType;
|
|
35
|
+
/**
|
|
36
|
+
* Returns a serializable representation for UI lists or API payload assembly.
|
|
37
|
+
*/
|
|
38
|
+
toObject(): ChannelObject;
|
|
39
|
+
toString(): string;
|
|
40
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported payment channel categories.
|
|
3
|
+
*/
|
|
4
|
+
export declare enum ChannelType {
|
|
5
|
+
BANK = "bank",
|
|
6
|
+
MOBILE_MONEY = "mobile_money"
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Transaction flows supported by Tembo coverage data.
|
|
10
|
+
*/
|
|
11
|
+
export declare enum TransactionDirection {
|
|
12
|
+
PAYOUT = "payout",
|
|
13
|
+
COLLECTION = "collection"
|
|
14
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ISO2CountryCode } from "@domain/country/country.types.js";
|
|
2
|
+
import type { BankSwiftCode } from "@domain/bank/bank.types.js";
|
|
3
|
+
import type { ChannelType, TransactionDirection } from "./channel.enums.js";
|
|
4
|
+
export interface ChannelData {
|
|
5
|
+
id: string;
|
|
6
|
+
type: ChannelType;
|
|
7
|
+
countryCode: ISO2CountryCode;
|
|
8
|
+
displayName: string;
|
|
9
|
+
directions: TransactionDirection[];
|
|
10
|
+
providerId?: string;
|
|
11
|
+
bankBic?: BankSwiftCode | string;
|
|
12
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { CurrencyCode } from "@domain/currency/currency.types.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { CountryJSONSchema } from "./country.schema.js";
|
|
4
|
+
import type { CountryCode, ISO2CountryCode, ISO3CountryCode } from "./country.types.js";
|
|
5
|
+
import { CONTINENT, SUB_REGION } from "./country.enums.js";
|
|
6
|
+
export { CONTINENT, SUB_REGION } from "./country.enums.js";
|
|
7
|
+
/**
|
|
8
|
+
* Internal symbol used by CountryFactory to bypass the protected constructor.
|
|
9
|
+
* Importing this from outside the factory is unsupported.
|
|
10
|
+
*/
|
|
11
|
+
export declare const CountryConstructorToken: unique symbol;
|
|
12
|
+
/**
|
|
13
|
+
* Compact JSON identity for a Country, sufficient to re-resolve the canonical
|
|
14
|
+
* record via CountryRegistry.
|
|
15
|
+
*/
|
|
16
|
+
export type CountryJSON = z.infer<typeof CountryJSONSchema>;
|
|
17
|
+
/**
|
|
18
|
+
* Plain-object representation of a Country containing the full state.
|
|
19
|
+
*/
|
|
20
|
+
export interface CountryObject {
|
|
21
|
+
code: ISO2CountryCode;
|
|
22
|
+
iso3: ISO3CountryCode;
|
|
23
|
+
name: string;
|
|
24
|
+
nameOfficial: string;
|
|
25
|
+
flagEmoji: string;
|
|
26
|
+
continent: CONTINENT;
|
|
27
|
+
region: SUB_REGION;
|
|
28
|
+
currencyCode: CurrencyCode | null;
|
|
29
|
+
dialCode: number;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Pure value object representing a country. Lookups, validation, and factories
|
|
33
|
+
* live on CountryRegistry; the static methods on this class are thin delegations
|
|
34
|
+
* for ergonomic call sites.
|
|
35
|
+
*/
|
|
36
|
+
export declare class Country {
|
|
37
|
+
private readonly _name;
|
|
38
|
+
private readonly _iso2;
|
|
39
|
+
private readonly _nameOfficial;
|
|
40
|
+
private readonly _iso3;
|
|
41
|
+
private readonly _flagEmoji;
|
|
42
|
+
private readonly _continent;
|
|
43
|
+
private readonly _region;
|
|
44
|
+
private readonly _currencyCode;
|
|
45
|
+
private readonly _dialCode;
|
|
46
|
+
constructor(token: symbol, _name: string, _iso2: ISO2CountryCode, _nameOfficial: string, _iso3: ISO3CountryCode, _flagEmoji: string, _continent: CONTINENT, _region: SUB_REGION, _currencyCode: CurrencyCode | null, _dialCode: number);
|
|
47
|
+
get name(): string;
|
|
48
|
+
get code(): ISO2CountryCode;
|
|
49
|
+
get nameOfficial(): string;
|
|
50
|
+
get iso3(): ISO3CountryCode;
|
|
51
|
+
get flagEmoji(): string;
|
|
52
|
+
get continent(): CONTINENT;
|
|
53
|
+
get region(): SUB_REGION;
|
|
54
|
+
get currencyCode(): CurrencyCode | null;
|
|
55
|
+
get dialCode(): number;
|
|
56
|
+
/** Human-readable label, e.g. "Tanzania (TZ)". */
|
|
57
|
+
toString(): string;
|
|
58
|
+
/** Detailed label including flag and ISO-3 code. */
|
|
59
|
+
toDetailedString(): string;
|
|
60
|
+
/** Compact JSON identity for serialization. */
|
|
61
|
+
toJSON(): CountryJSON;
|
|
62
|
+
toJSONString(): string;
|
|
63
|
+
/** Full plain-object dump of all current state. */
|
|
64
|
+
toObject(): CountryObject;
|
|
65
|
+
/** Resolves a Country by its ISO-2 or ISO-3 code (case-insensitive). */
|
|
66
|
+
static fromCode(code: CountryCode | string): Country | undefined;
|
|
67
|
+
/** Re-resolves a Country from its compact JSON identity. */
|
|
68
|
+
static fromJSON(json: CountryJSON | string): Country | undefined;
|
|
69
|
+
/** Re-resolves a Country from a JSON string. */
|
|
70
|
+
static fromJSONString(jsonString: string): Country | undefined;
|
|
71
|
+
/** Type guard delegating to CountryFactory.isCountry. */
|
|
72
|
+
static is(obj: unknown): obj is Country;
|
|
73
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Continents as represented in the country dataset.
|
|
3
|
+
*
|
|
4
|
+
* This enum lives in its own module so factories and registries can import it
|
|
5
|
+
* without going through `country.ts`. Importing enums from `country.ts` while
|
|
6
|
+
* `country.ts` still imports the factory creates a module-init-time cycle
|
|
7
|
+
* (the factory module evaluates before `country.ts` finishes declaring its
|
|
8
|
+
* exports), which leaves the enum reference `undefined` when used in `const`
|
|
9
|
+
* initializers.
|
|
10
|
+
*/
|
|
11
|
+
export declare enum CONTINENT {
|
|
12
|
+
AFRICA = "Africa",
|
|
13
|
+
ANTARCTICA = "Antarctica",
|
|
14
|
+
ASIA = "Asia",
|
|
15
|
+
EUROPE = "Europe",
|
|
16
|
+
NORTH_AMERICA = "North America",
|
|
17
|
+
OCEANIA = "Oceania",
|
|
18
|
+
SOUTH_AMERICA = "South America"
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* UN sub-regions as represented in the country dataset.
|
|
22
|
+
*/
|
|
23
|
+
export declare enum SUB_REGION {
|
|
24
|
+
AUSTRALIA_AND_NEW_ZEALAND = "Australia and New Zealand",
|
|
25
|
+
CARIBBEAN = "Caribbean",
|
|
26
|
+
CENTRAL_AMERICA = "Central America",
|
|
27
|
+
CENTRAL_ASIA = "Central Asia",
|
|
28
|
+
EASTERN_AFRICA = "Eastern Africa",
|
|
29
|
+
EASTERN_ASIA = "Eastern Asia",
|
|
30
|
+
EASTERN_EUROPE = "Eastern Europe",
|
|
31
|
+
MELANESIA = "Melanesia",
|
|
32
|
+
MICRONESIA = "Micronesia",
|
|
33
|
+
MIDDLE_AFRICA = "Middle Africa",
|
|
34
|
+
NORTHERN_AFRICA = "Northern Africa",
|
|
35
|
+
NORTHERN_AMERICA = "Northern America",
|
|
36
|
+
NORTHERN_EUROPE = "Northern Europe",
|
|
37
|
+
POLYNESIA = "Polynesia",
|
|
38
|
+
SOUTH_EASTERN_ASIA = "South-eastern Asia",
|
|
39
|
+
SOUTHERN_AFRICA = "Southern Africa",
|
|
40
|
+
SOUTHERN_ASIA = "Southern Asia",
|
|
41
|
+
SOUTHERN_EUROPE = "Southern Europe",
|
|
42
|
+
WESTERN_AFRICA = "Western Africa",
|
|
43
|
+
WESTERN_ASIA = "Western Asia",
|
|
44
|
+
WESTERN_EUROPE = "Western Europe"
|
|
45
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Zod schema for Country JSON serialization
|
|
4
|
+
* This schema validates the JSON representation of a Country instance
|
|
5
|
+
*/
|
|
6
|
+
export declare const CountryJSONSchema: z.ZodObject<{
|
|
7
|
+
/** The ISO 3166-1 alpha-2 country code */
|
|
8
|
+
code: z.ZodString;
|
|
9
|
+
/** Version for future compatibility */
|
|
10
|
+
version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
11
|
+
}, "strip", z.ZodTypeAny, {
|
|
12
|
+
code: string;
|
|
13
|
+
version: string;
|
|
14
|
+
}, {
|
|
15
|
+
code: string;
|
|
16
|
+
version?: string | undefined;
|
|
17
|
+
}>;
|
|
18
|
+
/**
|
|
19
|
+
* Zod schema for validating ISO 3166-1 alpha-2 country codes.
|
|
20
|
+
*
|
|
21
|
+
* This schema checks if a given string is a valid ISO 3166-1 alpha-2 country code
|
|
22
|
+
* by checking against the predefined set of valid codes.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* const result = iso2CountryCodeSchema.safeParse("US");
|
|
26
|
+
* if (result.success) {
|
|
27
|
+
* console.log("Valid ISO2 country code");
|
|
28
|
+
* } else {
|
|
29
|
+
* console.error("Invalid ISO2 country code");
|
|
30
|
+
* }
|
|
31
|
+
*/
|
|
32
|
+
export declare const ISO2CountryCodeSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
33
|
+
/**
|
|
34
|
+
* Zod schema for validating ISO 3166-1 alpha-3 country codes.
|
|
35
|
+
*
|
|
36
|
+
* This schema checks if a given string is a valid ISO 3166-1 alpha-3 country code
|
|
37
|
+
* by checking against the predefined set of valid codes.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* const result = iso3CountryCodeSchema.safeParse("USA");
|
|
41
|
+
* if (result.success) {
|
|
42
|
+
* console.log("Valid ISO3 country code");
|
|
43
|
+
* } else {
|
|
44
|
+
* console.error("Invalid ISO3 country code");
|
|
45
|
+
* }
|
|
46
|
+
*/
|
|
47
|
+
export declare const ISO3CountryCodeSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
48
|
+
/**
|
|
49
|
+
* Zod schema for validating either ISO 3166-1 alpha-2 or alpha-3 country codes.
|
|
50
|
+
*
|
|
51
|
+
* This schema allows for flexibility in accepting both two-letter and three-letter
|
|
52
|
+
* country codes, making it useful for functions that need to handle both formats.
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* const result = countryCodeSchema.safeParse("US");
|
|
56
|
+
* if (result.success) {
|
|
57
|
+
* console.log("Valid country code");
|
|
58
|
+
* } else {
|
|
59
|
+
* console.error("Invalid country code");
|
|
60
|
+
* }
|
|
61
|
+
*/
|
|
62
|
+
export declare const CountryCodeSchema: z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodEffects<z.ZodString, string, string>, z.ZodObject<{
|
|
63
|
+
/** The ISO 3166-1 alpha-2 country code */
|
|
64
|
+
code: z.ZodString;
|
|
65
|
+
/** Version for future compatibility */
|
|
66
|
+
version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
67
|
+
}, "strip", z.ZodTypeAny, {
|
|
68
|
+
code: string;
|
|
69
|
+
version: string;
|
|
70
|
+
}, {
|
|
71
|
+
code: string;
|
|
72
|
+
version?: string | undefined;
|
|
73
|
+
}>]>;
|
|
@@ -60,4 +60,21 @@ export declare const ISO3CountryCodesSet: Set<string>;
|
|
|
60
60
|
* @see ISO3CountryCode - For three-letter country codes only
|
|
61
61
|
*/
|
|
62
62
|
export type CountryCode = ISO2CountryCode | ISO3CountryCode;
|
|
63
|
-
|
|
63
|
+
/**
|
|
64
|
+
* Type guard to check if a string is a valid ISO2CountryCode.
|
|
65
|
+
* @param code The string to check.
|
|
66
|
+
* @returns True if the string is a member of the ISO2CountryCode union type, false otherwise.
|
|
67
|
+
*/
|
|
68
|
+
export declare function isISO2CountryCode(code: string): code is ISO2CountryCode;
|
|
69
|
+
/**
|
|
70
|
+
* Type guard to check if a string is a valid ISO3CountryCode.
|
|
71
|
+
* @param code The string to check.
|
|
72
|
+
* @returns True if the string is a member of the ISO3CountryCode union type, false otherwise.
|
|
73
|
+
*/
|
|
74
|
+
export declare function isISO3CountryCode(code: string): code is ISO3CountryCode;
|
|
75
|
+
/**
|
|
76
|
+
* Type guard to check if a string is a valid CountryCode.
|
|
77
|
+
* @param code The string to check.
|
|
78
|
+
* @returns True if the string is a valid ISO-2 or ISO-3 country code.
|
|
79
|
+
*/
|
|
80
|
+
export declare function isCountryCode(code: string): code is CountryCode;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { CurrencyCode } from "./currency.types.js";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { CurrencyJSONSchema } from "./currency.schema.js";
|
|
4
|
+
/**
|
|
5
|
+
* Internal symbol used by CurrencyFactory to bypass the protected constructor.
|
|
6
|
+
* Importing this from outside the factory is unsupported.
|
|
7
|
+
*/
|
|
8
|
+
export declare const CurrencyConstructorToken: unique symbol;
|
|
9
|
+
/**
|
|
10
|
+
* Compact JSON identity for a Currency, sufficient to re-resolve the canonical
|
|
11
|
+
* record via CurrencyRegistry.
|
|
12
|
+
*/
|
|
13
|
+
export type CurrencyJSON = z.infer<typeof CurrencyJSONSchema>;
|
|
14
|
+
/**
|
|
15
|
+
* Plain-object representation of a Currency containing the full state.
|
|
16
|
+
*/
|
|
17
|
+
export interface CurrencyObject {
|
|
18
|
+
code: CurrencyCode;
|
|
19
|
+
name: string;
|
|
20
|
+
namePlural: string;
|
|
21
|
+
symbol: string;
|
|
22
|
+
symbolNative: string;
|
|
23
|
+
decimalDigits: number;
|
|
24
|
+
rounding: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Pure value object representing an ISO 4217 currency. Lookups, validation, and
|
|
28
|
+
* lookups live on CurrencyRegistry; the static methods on this class are thin
|
|
29
|
+
* delegations for ergonomic call sites.
|
|
30
|
+
*/
|
|
31
|
+
export declare class Currency {
|
|
32
|
+
private readonly _symbol;
|
|
33
|
+
private readonly _name;
|
|
34
|
+
private readonly _symbolNative;
|
|
35
|
+
private readonly _decimalDigits;
|
|
36
|
+
private readonly _rounding;
|
|
37
|
+
private readonly _code;
|
|
38
|
+
private readonly _namePlural;
|
|
39
|
+
constructor(token: symbol, _symbol: string, _name: string, _symbolNative: string, _decimalDigits: number, _rounding: number, _code: CurrencyCode, _namePlural: string);
|
|
40
|
+
get symbol(): string;
|
|
41
|
+
get name(): string;
|
|
42
|
+
get symbolNative(): string;
|
|
43
|
+
get decimalDigits(): number;
|
|
44
|
+
get rounding(): number;
|
|
45
|
+
get code(): CurrencyCode;
|
|
46
|
+
get namePlural(): string;
|
|
47
|
+
/** Human-readable label, e.g. "US Dollar (USD)". */
|
|
48
|
+
toString(): string;
|
|
49
|
+
/** Compact JSON identity for serialization. */
|
|
50
|
+
toJSON(): CurrencyJSON;
|
|
51
|
+
toJSONString(): string;
|
|
52
|
+
/** Full plain-object dump of all current state. */
|
|
53
|
+
toObject(): CurrencyObject;
|
|
54
|
+
/** Resolves a Currency by ISO 4217 code (case-insensitive). */
|
|
55
|
+
static fromCode(code: CurrencyCode | string): Currency | undefined;
|
|
56
|
+
/** Re-resolves a Currency from its compact JSON identity. */
|
|
57
|
+
static fromJSON(json: CurrencyJSON | string): Currency | undefined;
|
|
58
|
+
/** Re-resolves a Currency from a JSON string. */
|
|
59
|
+
static fromJSONString(jsonString: string): Currency | undefined;
|
|
60
|
+
/** Type guard delegating to CurrencyFactory.isCurrency. */
|
|
61
|
+
static is(obj: unknown): obj is Currency;
|
|
62
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Zod schema for validating ISO 4217 currency codes
|
|
4
|
+
*
|
|
5
|
+
* This schema checks if the provided string is a valid ISO 4217 currency code.
|
|
6
|
+
* If the validation fails, it returns an error message.
|
|
7
|
+
*/
|
|
8
|
+
export declare const CurrencyCodeSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
9
|
+
/**
|
|
10
|
+
* Zod schema for Currency JSON serialization
|
|
11
|
+
* This schema validates the JSON representation of a Currency instance
|
|
12
|
+
*/
|
|
13
|
+
export declare const CurrencyJSONSchema: z.ZodObject<{
|
|
14
|
+
/** The ISO 4217 currency code */
|
|
15
|
+
code: z.ZodString;
|
|
16
|
+
/** Version for future compatibility */
|
|
17
|
+
version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
18
|
+
}, "strip", z.ZodTypeAny, {
|
|
19
|
+
code: string;
|
|
20
|
+
version: string;
|
|
21
|
+
}, {
|
|
22
|
+
code: string;
|
|
23
|
+
version?: string | undefined;
|
|
24
|
+
}>;
|
|
@@ -17,5 +17,10 @@
|
|
|
17
17
|
* Example: "USD" for US Dollar, "EUR" for Euro, "JPY" for Japanese Yen
|
|
18
18
|
*/
|
|
19
19
|
export type CurrencyCode = "USD" | "CAD" | "EUR" | "AED" | "AFN" | "ALL" | "AMD" | "ARS" | "AUD" | "AZN" | "BAM" | "BDT" | "BGN" | "BHD" | "BIF" | "BND" | "BOB" | "BRL" | "BWP" | "BYN" | "BZD" | "CDF" | "CHF" | "CLP" | "CNY" | "COP" | "CRC" | "CVE" | "CZK" | "DJF" | "DKK" | "DOP" | "DZD" | "EGP" | "ERN" | "ETB" | "GBP" | "GEL" | "GHS" | "GNF" | "GTQ" | "HKD" | "HNL" | "HRK" | "HUF" | "IDR" | "ILS" | "INR" | "IQD" | "IRR" | "ISK" | "JMD" | "JOD" | "JPY" | "KES" | "KHR" | "KMF" | "KRW" | "KWD" | "KZT" | "LBP" | "LKR" | "LYD" | "MAD" | "MDL" | "MGA" | "MKD" | "MMK" | "MOP" | "MUR" | "MXN" | "MYR" | "MZN" | "NAD" | "NGN" | "NIO" | "NOK" | "NPR" | "NZD" | "OMR" | "PAB" | "PEN" | "PHP" | "PKR" | "PLN" | "PYG" | "QAR" | "RON" | "RSD" | "RUB" | "RWF" | "SAR" | "SDG" | "SEK" | "SGD" | "SOS" | "SSP" | "SYP" | "THB" | "TND" | "TOP" | "TRY" | "TTD" | "TWD" | "TZS" | "UAH" | "UGX" | "UYU" | "UZS" | "VES" | "VND" | "XAF" | "XOF" | "YER" | "ZAR" | "ZMW" | "STN" | "MRU" | "ZWG";
|
|
20
|
-
export declare const
|
|
21
|
-
|
|
20
|
+
export declare const CurrencyCodesSet: Set<CurrencyCode>;
|
|
21
|
+
/**
|
|
22
|
+
* Type guard to check if a string is a valid CurrencyCode.
|
|
23
|
+
* @param code The string to check.
|
|
24
|
+
* @returns True if the string is a member of the CurrencyCode union type, false otherwise.
|
|
25
|
+
*/
|
|
26
|
+
export declare function isCurrencyCode(code: string): code is CurrencyCode;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./amount/index.js";
|
|
2
2
|
export * from "./bank/index.js";
|
|
3
|
-
export * from "./
|
|
3
|
+
export * from "./channel/index.js";
|
|
4
|
+
export * from "./phone-number/index.js";
|
|
4
5
|
export * from "./country/index.js";
|
|
5
6
|
export * from "./currency/index.js";
|
|
6
|
-
|
|
7
|
+
export * from "./mobile-money-provider/index.js";
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ChannelType, TransactionDirection } from "@domain/channel/channel.enums.js";
|
|
2
|
+
import type { ISO2CountryCode } from "@domain/country/country.types.js";
|
|
3
|
+
import { MobileMoneyProviderJSON } from "./mobile-money-provider.schema.js";
|
|
4
|
+
import type { MobileMoneyProviderData } from "./mobile-money-provider.types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Plain-object representation of a MobileMoneyProvider containing the full state.
|
|
7
|
+
*/
|
|
8
|
+
export interface MobileMoneyProviderObject extends MobileMoneyProviderData {
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Internal symbol used by MobileMoneyProviderFactory to bypass the protected constructor.
|
|
12
|
+
* Importing this from outside the factory is unsupported.
|
|
13
|
+
*/
|
|
14
|
+
export declare const MobileMoneyProviderConstructorToken: unique symbol;
|
|
15
|
+
/**
|
|
16
|
+
* Pure value object representing one supported mobile-money provider in a
|
|
17
|
+
* country. Lookups, detection, and validation live on MobileMoneyProviderRegistry;
|
|
18
|
+
* the static methods on this class are thin delegations for ergonomic call sites.
|
|
19
|
+
*/
|
|
20
|
+
export declare class MobileMoneyProvider {
|
|
21
|
+
readonly id: string;
|
|
22
|
+
readonly displayName: string;
|
|
23
|
+
readonly mobileMoneyServiceName: string;
|
|
24
|
+
readonly countryCode: MobileMoneyProviderData["countryCode"];
|
|
25
|
+
readonly currencyCode: MobileMoneyProviderData["currencyCode"];
|
|
26
|
+
readonly directions: TransactionDirection[];
|
|
27
|
+
readonly requiresExplicitProvider: boolean;
|
|
28
|
+
readonly phonePrefixes: string[];
|
|
29
|
+
constructor(token: symbol, data: MobileMoneyProviderData);
|
|
30
|
+
/** Generic channel type used by TemboCoverage channel listings. */
|
|
31
|
+
get channelType(): ChannelType;
|
|
32
|
+
/** Whether this provider supports the requested transaction direction. */
|
|
33
|
+
supportsDirection(direction: TransactionDirection): boolean;
|
|
34
|
+
/** Human-readable label, e.g. "M-Pesa (Vodacom) [TZ]". */
|
|
35
|
+
toString(): string;
|
|
36
|
+
/** Compact JSON identity for serialization. */
|
|
37
|
+
toJSON(): MobileMoneyProviderJSON;
|
|
38
|
+
toJSONString(): string;
|
|
39
|
+
/** Full plain-object dump of all current state. */
|
|
40
|
+
toObject(): MobileMoneyProviderObject;
|
|
41
|
+
/**
|
|
42
|
+
* Resolves a MobileMoneyProvider by ID. When `countryCode` is omitted, the
|
|
43
|
+
* factory searches across every supported country.
|
|
44
|
+
*/
|
|
45
|
+
static fromID(id: string, countryCode?: ISO2CountryCode): MobileMoneyProvider | undefined;
|
|
46
|
+
/** Re-resolves a MobileMoneyProvider from its compact JSON identity. */
|
|
47
|
+
static fromJSON(json: MobileMoneyProviderJSON | string): MobileMoneyProvider | undefined;
|
|
48
|
+
/** Re-resolves a MobileMoneyProvider from a JSON string. */
|
|
49
|
+
static fromJSONString(jsonString: string): MobileMoneyProvider | undefined;
|
|
50
|
+
/** Type guard delegating to MobileMoneyProviderFactory.isMobileMoneyProvider. */
|
|
51
|
+
static is(obj: unknown): obj is MobileMoneyProvider;
|
|
52
|
+
}
|
|
53
|
+
export { type MobileMoneyProviderJSON, MobileMoneyProviderJSONSchema, } from "./mobile-money-provider.schema.js";
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { ChannelType, TransactionDirection } from "@domain/channel/channel.enums.js";
|
|
3
|
+
export declare const MobileMoneyProviderJSONSchema: z.ZodObject<{
|
|
4
|
+
id: z.ZodString;
|
|
5
|
+
countryCode: z.ZodString;
|
|
6
|
+
channelType: z.ZodDefault<z.ZodLiteral<ChannelType.MOBILE_MONEY>>;
|
|
7
|
+
direction: z.ZodOptional<z.ZodNativeEnum<typeof TransactionDirection>>;
|
|
8
|
+
version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
9
|
+
}, "strip", z.ZodTypeAny, {
|
|
10
|
+
version: string;
|
|
11
|
+
countryCode: string;
|
|
12
|
+
id: string;
|
|
13
|
+
channelType: ChannelType.MOBILE_MONEY;
|
|
14
|
+
direction?: TransactionDirection | undefined;
|
|
15
|
+
}, {
|
|
16
|
+
countryCode: string;
|
|
17
|
+
id: string;
|
|
18
|
+
version?: string | undefined;
|
|
19
|
+
channelType?: ChannelType.MOBILE_MONEY | undefined;
|
|
20
|
+
direction?: TransactionDirection | undefined;
|
|
21
|
+
}>;
|
|
22
|
+
export type MobileMoneyProviderJSON = z.infer<typeof MobileMoneyProviderJSONSchema>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ISO2CountryCode } from "@domain/country/country.types.js";
|
|
2
|
+
import type { CurrencyCode } from "@domain/currency/currency.types.js";
|
|
3
|
+
import type { TransactionDirection } from "@domain/channel/channel.enums.js";
|
|
4
|
+
export interface MobileMoneyProviderData {
|
|
5
|
+
id: string;
|
|
6
|
+
displayName: string;
|
|
7
|
+
mobileMoneyServiceName: string;
|
|
8
|
+
countryCode: ISO2CountryCode;
|
|
9
|
+
currencyCode: CurrencyCode;
|
|
10
|
+
directions: TransactionDirection[];
|
|
11
|
+
requiresExplicitProvider: boolean;
|
|
12
|
+
phonePrefixes: string[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Provider IDs are stable uppercase Tembo identifiers, not display names.
|
|
16
|
+
*/
|
|
17
|
+
export declare function isProviderId(value: unknown): value is string;
|
|
18
|
+
/**
|
|
19
|
+
* Prefixes are national-number prefixes used only when detection is reliable.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isPhonePrefix(value: unknown): value is string;
|