@cardscan.ai/insurance-cardscan-react
Version:
A library that makes it easy to add health insurance card scanning to any web application
173 lines (172 loc) • 4.92 kB
TypeScript
export interface EligibilityApiResponseEligibilityRequest {
controlNumber?: string;
tradingPartnerServiceId?: string;
provider?: ProviderDto;
subscriber?: SubscriberDto;
}
export interface PayerDetails {
payer_name?: string;
address?: Address;
}
export interface Address {
address1?: string;
address2?: string;
city?: string;
state?: string;
postalCode?: string;
countryCode?: string;
locationIdentifier?: string;
countrySubDivisionCode?: string;
}
export interface PlanDetails {
plan_number?: string;
group_name?: string;
group_number?: string;
plan_start_date?: string;
plan_eligibility_start_date?: string;
plan_name?: string;
plan_active?: boolean;
}
export interface Service {
co_insurance_in_network?: CoInsurance;
co_payment_in_network?: CoPayment;
service_code?: string;
}
interface ServiceClass {
coInsuranceInNetwork?: CoInsurance;
coPaymentInNetwork?: CoPayment;
serviceCode?: string;
}
export interface CoInsurance {
amount?: string;
}
export interface CoPayment {
amount?: string;
}
export interface CoverageSummary {
individual_deductible_in_network?: Deductible;
individual_oop_in_network?: OOP;
family_deductible_in_network?: Deductible;
family_oop_in_network?: OOP;
}
export interface Deductible {
total_amount?: string;
remaining_amount?: string;
}
export interface OOP {
total_amount?: string;
remaining_amount?: string;
}
export interface EligibilityInfo {
provider: ProviderDto;
subscriber: SubscriberDto;
}
export type ProviderDto = IndividualProvider | OrganizationProvider;
interface IndividualProvider {
firstName: string;
lastName: string;
organizationName?: never;
npi: string;
}
interface OrganizationProvider {
firstName?: never;
lastName?: never;
organizationName: string;
npi: string;
}
export interface SubscriberDto {
firstName: string;
lastName: string;
dateOfBirth: string;
}
export interface EligibilityApiResponse {
eligibility_id: string;
state: string;
card_id: string;
created_at: string;
update_at: string;
eligibility_request?: EligibilityApiResponseEligibilityRequest;
eligibility_response?: Response;
eligibility_summarized_response?: EligibilitySummarizedResponse;
}
export interface EligibilitySummarizedResponse {
eligibility_request_id?: string;
subscriber_details?: SubscriberDetails;
payer_details?: PayerDetails;
plan_details?: PlanDetails;
coverage_summary?: CoverageSummary;
chiropractic?: Service;
emergency_room?: Service;
office_visit?: Service;
urgent_care?: Service;
hospital_outpatient?: Service;
}
export interface SubscriberDetails {
member_id?: string;
firstname?: string;
lastname?: string;
middlename?: string;
gender?: string;
address?: Address;
dob?: string;
}
export default class Eligibility {
eligibilityId: string;
state: string;
cardId: string;
createdAt: string;
updateAt: string;
eligibilityRequest?: EligibilityApiResponseEligibilityRequest;
eligibilityResponse?: Response;
eligibilitySummarizedResponse?: {
eligibilityRequestId?: string;
subscriberDetails?: {
memberId?: string;
firstName?: string;
lastName?: string;
middleName?: string;
gender?: string;
dob?: string;
address?: Address;
};
payerDetails?: {
payerName?: string;
address?: Address;
};
planDetails?: {
planNumber?: string;
groupName?: string;
groupNumber?: string;
planStartDate?: string;
planEligibilityStartDate?: string;
planName?: string;
planActive?: boolean;
};
coverageSummary?: {
individualDeductibleInNetwork?: {
totalAmount?: string;
remainingAmount?: string;
};
individualOOPInNetwork?: {
totalAmount?: string;
remainingAmount?: string;
};
familyDeductibleInNetwork?: {
totalAmount?: string;
remainingAmount?: string;
};
familyOOPInNetwork?: {
totalAmount?: string;
remainingAmount?: string;
};
};
chiropractic?: ServiceClass;
emergencyRoom?: ServiceClass;
officeVisit?: ServiceClass;
urgentCare?: ServiceClass;
hospitalOutpatient?: ServiceClass;
};
constructor(params: EligibilityApiResponse);
private mapService;
}
export {};