UNPKG

@availity/select

Version:
302 lines (268 loc) 9.12 kB
import { ReactNode } from 'react'; import { GroupBase, Props, StylesConfig, ThemeConfig } from 'react-select'; import { AsyncPaginateProps } from 'react-select-async-paginate'; import { FieldValidator } from 'formik'; import { ButtonProps } from 'reactstrap'; /* eslint-disable @typescript-eslint/no-explicit-any */ interface SelectStyleArgs { showError?: boolean; styles?: StylesConfig; isInline?: boolean; } declare const selectStyles: (props: SelectStyleArgs) => { styles: StylesConfig; theme: ThemeConfig; }; type SelectProps<Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option>> = { allowSelectAll?: boolean; autofill?: boolean | Record<string, string | ((value: any) => any)>; cacheUniq?: any | any[]; clearButtonClassName?: string; clearButtonText?: string; creatable?: boolean; clearButtonProps?: ButtonProps; defaultToFirstOption?: boolean; defaultToOnlyOption?: boolean; feedback?: boolean; helpMessage?: ReactNode; labelKey?: string; loadOptions?: AsyncPaginateProps<Option, Group, any, IsMulti>['loadOptions']; minLength?: number; maxLength?: number; name: string; onChange?: (value: Option) => void; raw?: boolean; required?: boolean; selectRef?: AsyncPaginateProps<Option, Group, any, IsMulti>['selectRef']; validate?: FieldValidator; waitUntilFocused?: boolean; valueKey?: string; } & Omit<Props<Option, IsMulti, Group>, 'onChange'>; declare const Select: <Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option>>( props: SelectProps<Option, IsMulti, Group> ) => JSX.Element; type SelectFieldProps<Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option>> = { feedbackClass?: string; groupClass?: string; helpId?: string; label?: ReactNode; labelClass?: string; labelHidden?: boolean; required?: boolean; isHelpVideoType?: boolean; } & SelectProps<Option, IsMulti, Group>; declare const SelectField: <Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option>>( props: SelectFieldProps<Option, IsMulti, Group> ) => JSX.Element; /* eslint-disable @typescript-eslint/no-explicit-any */ /* eslint-disable @typescript-eslint/ban-types */ type ResourceSelectProps< Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option> > = { additional?: object; additionalPostGetArgs?: object; customerId?: string; debounceTimeout?: number; defaultToFirstOption?: boolean; defaultToOnlyOption?: boolean; delay?: number; encodeSearchValue?: boolean; getResult?: string | ((resource: any, data: any) => any); graphqlConfig?: { type: string; query: string }; hasMore?: | boolean | ((data: any) => boolean) | ((data: { totalCount: number; limit: number; offset: number }) => boolean); itemsPerPage?: number; method?: 'POST' | 'GET'; minCharsToSearch?: number; onError?: (error: unknown) => void; onPageChange?: (inputValue: any, page: any) => void; parameters?: any | ((params: any) => void); pageAll?: boolean; pageAllSearchBy?: (previousOptions: Option[], inputValue: string) => Option[] | Promise<Option[]>; requestConfig?: any; requiredParams?: any[]; resource: any; searchTerm?: string; shouldSearch?: boolean | ((inputValue: string, prevOptions: Option[], additional: any) => boolean); watchParams?: any[]; } & SelectFieldProps<Option, IsMulti, Group>; declare const ResourceSelect: (<Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option>>( props: ResourceSelectProps<Option, IsMulti, Group> ) => JSX.Element) & { create<Option, IsMulti extends boolean, Group extends GroupBase<Option>>( defaults: ResourceSelectProps<Option, IsMulti, Group> ): (props: ResourceSelectProps<Option, IsMulti, Group>) => JSX.Element; }; type PrebuiltResourceSelectProps$2< Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option> > = Omit<ResourceSelectProps<Option, IsMulti, Group>, 'resource'>; type Organization = { id: string; customerId: string; name: string; dbaName: string; status: string; statusCode: string; types: { code: string; name: string }[]; primaryConrollingAuthority: { lastName: string; firstName: string; primaryPhone: string; email: string }; physicalAddress: Address; mailingAddress: Address; billingAddress: Address; regions: { code: string; value: string }[]; npis: { number: string }[]; taxIds: { number: string; type: string }[]; payerAssignedProviderIds: Record<string, { number: string }[]>; phoneNumber: { areaCode: string; exchange: string; phoneNumber: string }; faxNumber: { areaCode: string; exchange: string; phoneNumber: string }; numberOfLicensedPhysicians: string; numberOfLicensedClinicians: string; }; type AvOrganizationSelectProps< Option, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> > = PrebuiltResourceSelectProps$2<Option, IsMulti, Group> & { resourceIds?: string | string[] | string[][]; permissionIds?: string | string[] | string[][]; }; declare const AvOrganizationSelect: < Option = Organization, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: AvOrganizationSelectProps<Option, IsMulti, Group> ) => JSX.Element; type PrebuiltResourceSelectProps$1< Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option> > = Omit<ResourceSelectProps<Option, IsMulti, Group>, 'resource'>; type Region = { id: string; value: string; }; declare const AvRegionSelect: < Option = Region, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps$1<Option, IsMulti, Group> & { defaultToCurrentRegion?: boolean } ) => JSX.Element; type PrebuiltResourceSelectProps< Option, IsMulti extends boolean, Group extends GroupBase<Option> = GroupBase<Option> > = Omit<ResourceSelectProps<Option, IsMulti, Group>, 'resource'>; type Code = { code: string; value: string; }; declare const AvCodeSelect: < Option = Code, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps<Option, IsMulti, Group> ) => JSX.Element; type NavOption = { id: string; name: string; shortName: string; description: string; type: string; activeDate: string; hasAccess?: boolean; children: NavOption[]; }; declare const AvNavigationSelect: < Option = NavOption, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps<Option, IsMulti, Group> ) => JSX.Element; type Payer = { id: string; payerId: string; payerName: string; }; declare const AvPayerSelect: < Option = Payer, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps<Option, IsMulti, Group> & { customerId: string } ) => JSX.Element; type Permission = { id: string; description: string; organizations: { id: string; customerId: string; name: string; resources: { id: string; }[]; }[]; }; declare const AvPermissionSelect: < Option = Permission, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps<Option, IsMulti, Group> ) => JSX.Element; type Provider = { id: string; businessNAme: string; uiDisplayName: string; atypical: boolean; npi: string; customerIds: string[]; roles: { code: string; value: string }[]; primaryPhone: { internationalCellularCode: string; areaCode: string; phoneNumber: string }; primaryFax: { internationalCellularCode: string; areaCode: string; phoneNumber: string }; primaryAddress: { line1: string; line2: string; city: string; state: string; stateCode: string; zip: { code: string; addon: string }; }; }; declare const AvProviderSelect: < Option = Provider, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps<Option, IsMulti, Group> & { customerId: string } ) => JSX.Element; type User = { id: string; userId: string; akaname: string; lastName: string; firstName: string; email: string; userValidated: boolean; userHasSecurityException: boolean; userLatestVerifyStatusCode: string; currentRegion: string; createDate: string; lastUpdateDate: string; }; declare const AvUserSelect: < Option = User, IsMulti extends boolean = boolean, Group extends GroupBase<Option> = GroupBase<Option> >( props: PrebuiltResourceSelectProps<Option, IsMulti, Group> ) => JSX.Element; export { AvCodeSelect, AvNavigationSelect, AvOrganizationSelect, AvPayerSelect, AvPermissionSelect, AvProviderSelect, AvRegionSelect, AvUserSelect, ResourceSelect, type ResourceSelectProps, SelectField, type SelectFieldProps, type SelectProps, type SelectStyleArgs, Select as default, selectStyles };