Membership API
Check political and economic union membership for European countries. This is a specialized module — import it from the membership subpath.
import { membership } from '@koshmoney/countries/membership';
// Or direct imports
import { isEU, isSEPA, getMemberships } from '@koshmoney/countries/membership';Types
interface MembershipInfo {
EU: boolean;
SEPA: boolean;
EEA: boolean;
Eurozone: boolean;
Schengen: boolean;
}
type MembershipType = 'EU' | 'SEPA' | 'EEA' | 'Eurozone' | 'Schengen';Individual Checks
isEU(alpha2)
Check if a country is an EU member state (27 countries).
Parameters: alpha2: string — Alpha-2 country code (case-insensitive)
Returns: boolean
import { membership } from '@koshmoney/countries/membership';
membership.isEU('FR'); // true
membership.isEU('CH'); // false (Switzerland)
membership.isEU('GB'); // false (post-Brexit)isSEPA(alpha2)
Check if a country is in the SEPA zone (36 countries).
Parameters: alpha2: string
Returns: boolean
import { membership } from '@koshmoney/countries/membership';
membership.isSEPA('FR'); // true
membership.isSEPA('CH'); // true (Switzerland is SEPA)
membership.isSEPA('GB'); // true (UK remains in SEPA)
membership.isSEPA('US'); // falseisEEA(alpha2)
Check if a country is in the European Economic Area (30 countries).
Parameters: alpha2: string
Returns: boolean
import { membership } from '@koshmoney/countries/membership';
membership.isEEA('NO'); // true (Norway)
membership.isEEA('IS'); // true (Iceland)
membership.isEEA('CH'); // false (Switzerland not in EEA)isEurozone(alpha2)
Check if a country uses the Euro (20 countries).
Parameters: alpha2: string
Returns: boolean
import { membership } from '@koshmoney/countries/membership';
membership.isEurozone('DE'); // true
membership.isEurozone('FR'); // true
membership.isEurozone('SE'); // false (Sweden uses SEK)
membership.isEurozone('GB'); // falseisSchengen(alpha2)
Check if a country is in the Schengen Area (27 countries).
Parameters: alpha2: string
Returns: boolean
import { membership } from '@koshmoney/countries/membership';
membership.isSchengen('FR'); // true
membership.isSchengen('CH'); // true (Switzerland is Schengen)
membership.isSchengen('IE'); // false (Ireland not in Schengen)
membership.isSchengen('GB'); // falseisMember(alpha2, membershipType)
Generic membership check for any group.
Parameters:
alpha2: string— Alpha-2 country codemembershipType: MembershipType—'EU','SEPA','EEA','Eurozone', or'Schengen'
Returns: boolean
import { membership } from '@koshmoney/countries/membership';
membership.isMember('FR', 'EU'); // true
membership.isMember('CH', 'SEPA'); // true
membership.isMember('NO', 'EEA'); // true
membership.isMember('DE', 'Eurozone'); // trueAggregate Lookups
getMemberships(alpha2)
Get all membership statuses for a country at once.
Parameters: alpha2: string
Returns: MembershipInfo
import { membership } from '@koshmoney/countries/membership';
membership.getMemberships('FR');
// { EU: true, SEPA: true, EEA: true, Eurozone: true, Schengen: true }
membership.getMemberships('CH');
// { EU: false, SEPA: true, EEA: false, Eurozone: false, Schengen: true }
membership.getMemberships('GB');
// { EU: false, SEPA: true, EEA: false, Eurozone: false, Schengen: false }
membership.getMemberships('NO');
// { EU: false, SEPA: true, EEA: true, Eurozone: false, Schengen: true }getMembers(membershipType)
Get all member countries of a specific group.
Parameters: membershipType: MembershipType
Returns: string[]
import { membership } from '@koshmoney/countries/membership';
membership.getMembers('EU');
// ['AT', 'BE', 'BG', 'CY', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI',
// 'FR', 'GR', 'HR', 'HU', 'IE', 'IT', 'LT', 'LU', 'LV', 'MT',
// 'NL', 'PL', 'PT', 'RO', 'SE', 'SI', 'SK']
membership.getMembers('Eurozone');
// ['AT', 'BE', 'CY', 'DE', 'EE', 'ES', 'FI', 'FR', 'GR', 'HR',
// 'IE', 'IT', 'LT', 'LU', 'LV', 'MT', 'NL', 'PT', 'SI', 'SK']Related
- Currency API — Check which currency a country uses
- Geography API — Continent and region data