/* PineCore custom elements */
export { PdsAccordion as PdsAccordion } from '../dist/types/components/pds-accordion/pds-accordion';
export { defineCustomElement as defineCustomElementPdsAccordion } from './pds-accordion';
export { PdsAvatar as PdsAvatar } from '../dist/types/components/pds-avatar/pds-avatar';
export { defineCustomElement as defineCustomElementPdsAvatar } from './pds-avatar';
export { PdsBox as PdsBox } from '../dist/types/components/pds-box/pds-box';
export { defineCustomElement as defineCustomElementPdsBox } from './pds-box';
export { PdsButton as PdsButton } from '../dist/types/components/pds-button/pds-button';
export { defineCustomElement as defineCustomElementPdsButton } from './pds-button';
export { PdsCheckbox as PdsCheckbox } from '../dist/types/components/pds-checkbox/pds-checkbox';
export { defineCustomElement as defineCustomElementPdsCheckbox } from './pds-checkbox';
export { PdsChip as PdsChip } from '../dist/types/components/pds-chip/pds-chip';
export { defineCustomElement as defineCustomElementPdsChip } from './pds-chip';
export { PdsCopytext as PdsCopytext } from '../dist/types/components/pds-copytext/pds-copytext';
export { defineCustomElement as defineCustomElementPdsCopytext } from './pds-copytext';
export { PdsDivider as PdsDivider } from '../dist/types/components/pds-divider/pds-divider';
export { defineCustomElement as defineCustomElementPdsDivider } from './pds-divider';
export { PdsImage as PdsImage } from '../dist/types/components/pds-image/pds-image';
export { defineCustomElement as defineCustomElementPdsImage } from './pds-image';
export { PdsInput as PdsInput } from '../dist/types/components/pds-input/pds-input';
export { defineCustomElement as defineCustomElementPdsInput } from './pds-input';
export { PdsLink as PdsLink } from '../dist/types/components/pds-link/pds-link';
export { defineCustomElement as defineCustomElementPdsLink } from './pds-link';
export { PdsLoader as PdsLoader } from '../dist/types/components/pds-loader/pds-loader';
export { defineCustomElement as defineCustomElementPdsLoader } from './pds-loader';
export { PdsProgress as PdsProgress } from '../dist/types/components/pds-progress/pds-progress';
export { defineCustomElement as defineCustomElementPdsProgress } from './pds-progress';
export { PdsRadio as PdsRadio } from '../dist/types/components/pds-radio/pds-radio';
export { defineCustomElement as defineCustomElementPdsRadio } from './pds-radio';
export { PdsRow as PdsRow } from '../dist/types/components/pds-row/pds-row';
export { defineCustomElement as defineCustomElementPdsRow } from './pds-row';
export { PdsSortable as PdsSortable } from '../dist/types/components/pds-sortable/pds-sortable';
export { defineCustomElement as defineCustomElementPdsSortable } from './pds-sortable';
export { PdsSortableItem as PdsSortableItem } from '../dist/types/components/pds-sortable/pds-sortable-item/pds-sortable-item';
export { defineCustomElement as defineCustomElementPdsSortableItem } from './pds-sortable-item';
export { PdsSwitch as PdsSwitch } from '../dist/types/components/pds-switch/pds-switch';
export { defineCustomElement as defineCustomElementPdsSwitch } from './pds-switch';
export { PdsTab as PdsTab } from '../dist/types/components/pds-tabs/pds-tab/pds-tab';
export { defineCustomElement as defineCustomElementPdsTab } from './pds-tab';
export { PdsTable as PdsTable } from '../dist/types/components/pds-table/pds-table';
export { defineCustomElement as defineCustomElementPdsTable } from './pds-table';
export { PdsTableBody as PdsTableBody } from '../dist/types/components/pds-table/pds-table-body/pds-table-body';
export { defineCustomElement as defineCustomElementPdsTableBody } from './pds-table-body';
export { PdsTableCell as PdsTableCell } from '../dist/types/components/pds-table/pds-table-cell/pds-table-cell';
export { defineCustomElement as defineCustomElementPdsTableCell } from './pds-table-cell';
export { PdsTableHead as PdsTableHead } from '../dist/types/components/pds-table/pds-table-head/pds-table-head';
export { defineCustomElement as defineCustomElementPdsTableHead } from './pds-table-head';
export { PdsTableHeadCell as PdsTableHeadCell } from '../dist/types/components/pds-table/pds-table-head-cell/pds-table-head-cell';
export { defineCustomElement as defineCustomElementPdsTableHeadCell } from './pds-table-head-cell';
export { PdsTableRow as PdsTableRow } from '../dist/types/components/pds-table/pds-table-row/pds-table-row';
export { defineCustomElement as defineCustomElementPdsTableRow } from './pds-table-row';
export { PdsTabpanel as PdsTabpanel } from '../dist/types/components/pds-tabs/pds-tabpanel/pds-tabpanel';
export { defineCustomElement as defineCustomElementPdsTabpanel } from './pds-tabpanel';
export { PdsTabs as PdsTabs } from '../dist/types/components/pds-tabs/pds-tabs';
export { defineCustomElement as defineCustomElementPdsTabs } from './pds-tabs';
export { PdsTextarea as PdsTextarea } from '../dist/types/components/pds-textarea/pds-textarea';
export { defineCustomElement as defineCustomElementPdsTextarea } from './pds-textarea';
export { PdsTooltip as PdsTooltip } from '../dist/types/components/pds-tooltip/pds-tooltip';
export { defineCustomElement as defineCustomElementPdsTooltip } from './pds-tooltip';

/**
 * 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 '../dist/types';
