/* ComponentLibrary custom elements */
export { VaAccordion as VaAccordion } from '../types/components/va-accordion/va-accordion';
export { defineCustomElement as defineCustomElementVaAccordion } from './va-accordion';
export { VaAccordionItem as VaAccordionItem } from '../types/components/va-accordion/va-accordion-item';
export { defineCustomElement as defineCustomElementVaAccordionItem } from './va-accordion-item';
export { VaAdditionalInfo as VaAdditionalInfo } from '../types/components/va-additional-info/va-additional-info';
export { defineCustomElement as defineCustomElementVaAdditionalInfo } from './va-additional-info';
export { VaAlert as VaAlert } from '../types/components/va-alert/va-alert';
export { defineCustomElement as defineCustomElementVaAlert } from './va-alert';
export { VaAlertExpandable as VaAlertExpandable } from '../types/components/va-alert-expandable/va-alert-expandable';
export { defineCustomElement as defineCustomElementVaAlertExpandable } from './va-alert-expandable';
export { VaAlertSignIn as VaAlertSignIn } from '../types/components/va-alert-sign-in/va-alert-sign-in';
export { defineCustomElement as defineCustomElementVaAlertSignIn } from './va-alert-sign-in';
export { VaBackToTop as VaBackToTop } from '../types/components/va-back-to-top/va-back-to-top';
export { defineCustomElement as defineCustomElementVaBackToTop } from './va-back-to-top';
export { VaBanner as VaBanner } from '../types/components/va-banner/va-banner';
export { defineCustomElement as defineCustomElementVaBanner } from './va-banner';
export { VaBreadcrumbs as VaBreadcrumbs } from '../types/components/va-breadcrumbs/va-breadcrumbs';
export { defineCustomElement as defineCustomElementVaBreadcrumbs } from './va-breadcrumbs';
export { VaButton as VaButton } from '../types/components/va-button/va-button';
export { defineCustomElement as defineCustomElementVaButton } from './va-button';
export { VaButtonIcon as VaButtonIcon } from '../types/components/va-button-icon/va-button-icon';
export { defineCustomElement as defineCustomElementVaButtonIcon } from './va-button-icon';
export { VaButtonPair as VaButtonPair } from '../types/components/va-button-pair/va-button-pair';
export { defineCustomElement as defineCustomElementVaButtonPair } from './va-button-pair';
export { VaButtonSegmented as VaButtonSegmented } from '../types/components/va-button-segmented/va-button-segmented';
export { defineCustomElement as defineCustomElementVaButtonSegmented } from './va-button-segmented';
export { VaCard as VaCard } from '../types/components/va-card/va-card';
export { defineCustomElement as defineCustomElementVaCard } from './va-card';
export { VaCard as VaCardStatus } from '../types/components/va-card-status/va-card-status';
export { defineCustomElement as defineCustomElementVaCardStatus } from './va-card-status';
export { VaCheckbox as VaCheckbox } from '../types/components/va-checkbox/va-checkbox';
export { defineCustomElement as defineCustomElementVaCheckbox } from './va-checkbox';
export { VaCheckboxGroup as VaCheckboxGroup } from '../types/components/va-checkbox-group/va-checkbox-group';
export { defineCustomElement as defineCustomElementVaCheckboxGroup } from './va-checkbox-group';
export { VaComboBox as VaComboBox } from '../types/components/va-combo-box/va-combo-box';
export { defineCustomElement as defineCustomElementVaComboBox } from './va-combo-box';
export { VACrisisLineModal as VaCrisisLineModal } from '../types/components/va-crisis-line-modal/va-crisis-line-modal';
export { defineCustomElement as defineCustomElementVaCrisisLineModal } from './va-crisis-line-modal';
export { VaCriticalAction as VaCriticalAction } from '../types/components/va-critical-action/va-critical-action';
export { defineCustomElement as defineCustomElementVaCriticalAction } from './va-critical-action';
export { VaDate as VaDate } from '../types/components/va-date/va-date';
export { defineCustomElement as defineCustomElementVaDate } from './va-date';
export { VaDetails as VaDetails } from '../types/components/va-details/va-details';
export { defineCustomElement as defineCustomElementVaDetails } from './va-details';
export { VaFileInput as VaFileInput } from '../types/components/va-file-input/va-file-input';
export { defineCustomElement as defineCustomElementVaFileInput } from './va-file-input';
export { VaFileInputMultiple as VaFileInputMultiple } from '../types/components/va-file-input-multiple/va-file-input-multiple';
export { defineCustomElement as defineCustomElementVaFileInputMultiple } from './va-file-input-multiple';
export { VaHeaderMinimal as VaHeaderMinimal } from '../types/components/va-header-minimal/va-header-minimal';
export { defineCustomElement as defineCustomElementVaHeaderMinimal } from './va-header-minimal';
export { VaIcon as VaIcon } from '../types/components/va-icon/va-icon';
export { defineCustomElement as defineCustomElementVaIcon } from './va-icon';
export { VaLanguageToggle as VaLanguageToggle } from '../types/components/va-language-toggle/va-language-toggle';
export { defineCustomElement as defineCustomElementVaLanguageToggle } from './va-language-toggle';
export { VaLink as VaLink } from '../types/components/va-link/va-link';
export { defineCustomElement as defineCustomElementVaLink } from './va-link';
export { VaLinkAction as VaLinkAction } from '../types/components/va-link-action/va-link-action';
export { defineCustomElement as defineCustomElementVaLinkAction } from './va-link-action';
export { VaLoadingIndicator as VaLoadingIndicator } from '../types/components/va-loading-indicator/va-loading-indicator';
export { defineCustomElement as defineCustomElementVaLoadingIndicator } from './va-loading-indicator';
export { VaMaintenanceBanner as VaMaintenanceBanner } from '../types/components/va-maintenance-banner/va-maintenance-banner';
export { defineCustomElement as defineCustomElementVaMaintenanceBanner } from './va-maintenance-banner';
export { VaMemorableDate as VaMemorableDate } from '../types/components/va-memorable-date/va-memorable-date';
export { defineCustomElement as defineCustomElementVaMemorableDate } from './va-memorable-date';
export { VAMinimalFooter as VaMinimalFooter } from '../types/components/va-minimal-footer/va-minimal-footer';
export { defineCustomElement as defineCustomElementVaMinimalFooter } from './va-minimal-footer';
export { VaModal as VaModal } from '../types/components/va-modal/va-modal';
export { defineCustomElement as defineCustomElementVaModal } from './va-modal';
export { VaNeedHelp as VaNeedHelp } from '../types/components/va-need-help/va-need-help';
export { defineCustomElement as defineCustomElementVaNeedHelp } from './va-need-help';
export { VaNotification as VaNotification } from '../types/components/va-notification/va-notification';
export { defineCustomElement as defineCustomElementVaNotification } from './va-notification';
export { VaOfficialGovBanner as VaOfficialGovBanner } from '../types/components/va-official-gov-banner/va-official-gov-banner';
export { defineCustomElement as defineCustomElementVaOfficialGovBanner } from './va-official-gov-banner';
export { VaOmbInfo as VaOmbInfo } from '../types/components/va-omb-info/va-omb-info';
export { defineCustomElement as defineCustomElementVaOmbInfo } from './va-omb-info';
export { VaOnThisPage as VaOnThisPage } from '../types/components/va-on-this-page/va-on-this-page';
export { defineCustomElement as defineCustomElementVaOnThisPage } from './va-on-this-page';
export { VaPagination as VaPagination } from '../types/components/va-pagination/va-pagination';
export { defineCustomElement as defineCustomElementVaPagination } from './va-pagination';
export { VaPrivacyAgreement as VaPrivacyAgreement } from '../types/components/va-privacy-agreement/va-privacy-agreement';
export { defineCustomElement as defineCustomElementVaPrivacyAgreement } from './va-privacy-agreement';
export { VaProcessList as VaProcessList } from '../types/components/va-process-list/va-process-list';
export { defineCustomElement as defineCustomElementVaProcessList } from './va-process-list';
export { VaProcessListItem as VaProcessListItem } from '../types/components/va-process-list/va-process-list-item';
export { defineCustomElement as defineCustomElementVaProcessListItem } from './va-process-list-item';
export { VaProgressBar as VaProgressBar } from '../types/components/va-progress-bar/va-progress-bar';
export { defineCustomElement as defineCustomElementVaProgressBar } from './va-progress-bar';
export { VaPromoBanner as VaPromoBanner } from '../types/components/va-promo-banner/va-promo-banner';
export { defineCustomElement as defineCustomElementVaPromoBanner } from './va-promo-banner';
export { VaRadio as VaRadio } from '../types/components/va-radio/va-radio';
export { defineCustomElement as defineCustomElementVaRadio } from './va-radio';
export { VaRadioOption as VaRadioOption } from '../types/components/va-radio-option/va-radio-option';
export { defineCustomElement as defineCustomElementVaRadioOption } from './va-radio-option';
export { VaSearchFilter as VaSearchFilter } from '../types/components/va-search-filter/va-search-filter';
export { defineCustomElement as defineCustomElementVaSearchFilter } from './va-search-filter';
export { VaSearchInput as VaSearchInput } from '../types/components/va-search-input/va-search-input';
export { defineCustomElement as defineCustomElementVaSearchInput } from './va-search-input';
export { VaSegmentedProgressBar as VaSegmentedProgressBar } from '../types/components/va-segmented-progress-bar/va-segmented-progress-bar';
export { defineCustomElement as defineCustomElementVaSegmentedProgressBar } from './va-segmented-progress-bar';
export { VaSelect as VaSelect } from '../types/components/va-select/va-select';
export { defineCustomElement as defineCustomElementVaSelect } from './va-select';
export { VaServiceListItem as VaServiceListItem } from '../types/components/va-service-list-item/va-service-list-item';
export { defineCustomElement as defineCustomElementVaServiceListItem } from './va-service-list-item';
export { VaSidenav as VaSidenav } from '../types/components/va-sidenav/va-sidenav';
export { defineCustomElement as defineCustomElementVaSidenav } from './va-sidenav';
export { VaSidenavItem as VaSidenavItem } from '../types/components/va-sidenav/va-sidenav-item';
export { defineCustomElement as defineCustomElementVaSidenavItem } from './va-sidenav-item';
export { VaSidenavMenu as VaSidenavSubmenu } from '../types/components/va-sidenav/va-sidenav-submenu';
export { defineCustomElement as defineCustomElementVaSidenavSubmenu } from './va-sidenav-submenu';
export { VaSort as VaSort } from '../types/components/va-sort/va-sort';
export { defineCustomElement as defineCustomElementVaSort } from './va-sort';
export { VaStatementOfTruth as VaStatementOfTruth } from '../types/components/va-statement-of-truth/va-statement-of-truth';
export { defineCustomElement as defineCustomElementVaStatementOfTruth } from './va-statement-of-truth';
export { VaSummaryBox as VaSummaryBox } from '../types/components/va-summary-box/va-summary-box';
export { defineCustomElement as defineCustomElementVaSummaryBox } from './va-summary-box';
export { VaTabItem as VaTabItem } from '../types/components/va-tabs/va-tab-item';
export { defineCustomElement as defineCustomElementVaTabItem } from './va-tab-item';
export { VaTabPanel as VaTabPanel } from '../types/components/va-tabs/va-tab-panel';
export { defineCustomElement as defineCustomElementVaTabPanel } from './va-tab-panel';
export { VaTable as VaTable } from '../types/components/va-table/va-table';
export { defineCustomElement as defineCustomElementVaTable } from './va-table';
export { VaTableInner as VaTableInner } from '../types/components/va-table/va-table-inner/va-table-inner';
export { defineCustomElement as defineCustomElementVaTableInner } from './va-table-inner';
export { VaTableRow as VaTableRow } from '../types/components/va-table/va-table-inner/va-table-row';
export { defineCustomElement as defineCustomElementVaTableRow } from './va-table-row';
export { VaTabs as VaTabs } from '../types/components/va-tabs/va-tabs';
export { defineCustomElement as defineCustomElementVaTabs } from './va-tabs';
export { VaTagStatus as VaTagStatus } from '../types/components/va-tag-status/va-tag-status';
export { defineCustomElement as defineCustomElementVaTagStatus } from './va-tag-status';
export { VaTelephone as VaTelephone } from '../types/components/va-telephone/va-telephone';
export { defineCustomElement as defineCustomElementVaTelephone } from './va-telephone';
export { VaTelephoneInput as VaTelephoneInput } from '../types/components/va-telephone-input/va-telephone-input';
export { defineCustomElement as defineCustomElementVaTelephoneInput } from './va-telephone-input';
export { VaTextInput as VaTextInput } from '../types/components/va-text-input/va-text-input';
export { defineCustomElement as defineCustomElementVaTextInput } from './va-text-input';
export { VaTextarea as VaTextarea } from '../types/components/va-textarea/va-textarea';
export { defineCustomElement as defineCustomElementVaTextarea } from './va-textarea';

/**
 * Get the base path to where the assets can be found. Use "setAssetPath(path)"
 * if the path needs to be customized.
 */
export declare const getAssetPath: (path: string) => string;

/**
 * Used to manually set the base path where assets can be found.
 * If the script is used as "module", it's recommended to use "import.meta.url",
 * such as "setAssetPath(import.meta.url)". Other options include
 * "setAssetPath(document.currentScript.src)", or using a bundler's replace plugin to
 * dynamically set the path at build time, such as "setAssetPath(process.env.ASSET_PATH)".
 * But do note that this configuration depends on how your script is bundled, or lack of
 * bundling, and where your assets can be loaded from. Additionally custom bundling
 * will have to ensure the static assets are copied to its build directory.
 */
export declare const setAssetPath: (path: string) => void;

/**
 * Used to specify a nonce value that corresponds with an application's CSP.
 * When set, the nonce will be added to all dynamically created script and style tags at runtime.
 * Alternatively, the nonce value can be set on a meta tag in the DOM head
 * (<meta name="csp-nonce" content="{ nonce value here }" />) which
 * will result in the same behavior.
 */
export declare const setNonce: (nonce: string) => void

export interface SetPlatformOptions {
  raf?: (c: FrameRequestCallback) => number;
  ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
  rel?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
}
export declare const setPlatformOptions: (opts: SetPlatformOptions) => void;
export * from '../types';
