import { FASTElement } from "@microsoft/fast-element";
/**
* # Reference
*
* Fluent Reference. A collapsable frame designed to compose information related to content source and citation.
*
*
* ```html
*
* 1
* Title
* Word
* Private
* Last Edited Yesterday by Monica Kane
* "...Summary of reference"
*
*
* ```
*/
export declare class Reference extends FASTElement {
/**
* ## actions
*
* the elements slotted into the actions slot
*
* @type HTMLElement[]
*/
actions: HTMLElement[];
/**
* ## actionsChanged
*
* when elements are slotted into the actions section they are looped through and queried for fluent-menus and fluent-buttons. These elements are added to the actionsButtons array which is then merged into the _focusableElements array.
* @type () => void
*/
actionsChanged(): void;
/**
* # actionsButtons
* Actionable elements pulled from the actions slot.
*
* @type HTMLElement[]
*/
actionsButtons: Array;
/**
* ## index
* The index of the citation. Supplied as a slotted dom element and renders to the screen as the citation.
*
* @type number | undefined
*/
index?: number;
/**
* ## indexReference
*
* A reference to the slotted index element
*/
indexReference: Array;
indexReferenceChanged(): void;
/**
* ## metadataTextOne
*
* text metadata content for citation. appears above reference quote
*/
metadataTextOne: Array;
/**
* ## metadataTextOne
* change handler
*/
metadataTextOneChanged(): void;
/**
* ## hasMetadataTextOne
* true when text is present
*/
hasMetadataTextOne: boolean;
/**
* ## metadataTextTwo
*
* text metadata content for citation. appears above reference quote
*/
metadataTextTwo: Array;
/**
* ## metadataTextTwo
* change handler
*/
metadataTextTwoChanged(): void;
/**
* ## hasMetadataTextTwo
* true when text is present
*/
hasMetadataTextTwo: boolean;
/**
* ## metadataTextThree
*
* text metadata content for citation. appears above reference quote
*/
metadataTextThree: Array;
/**
* ## metadataTextThree
* change handler
*/
metadataTextThreeChanged(): void;
/**
* ## hasMetadataTextThree
* true when text is present
*/
hasMetadataTextThree: boolean;
/**
* ## citationHref
* href endpoint for citation
*
* @type string | undefined
*/
citationHref?: string;
/**
* ## loading
* Used to set loading state of the reference
*
* @type boolean
*/
loading: boolean;
/**
* ## expanded
* true when expanded
*
* @type boolean | undefined
*/
expanded?: boolean;
/**
* ## emitDismissEvent
* Called when the reference is dismissed.
*
* @type () => void
*/
emitDismissEvent(): void;
/**
* ## _focusableELements
* Elements where focus becomes trapped for keyboard navigation.
*
* @type HTMLElement[]
*/
private _focusableElements;
/**
* ##_activeIndex
*
* the active index of the focused element
*
* @type number | undefined
*/
private _activeIndex;
_activeIndexChanged(): void;
/**
* ## activeIndex
*
* getter for _activeIndex
*/
get activeIndex(): number | undefined;
/**
* ## activeIndex
*
* setter for _activeIndex. Sets value to undefined when null or undefined. Index value is capped to the length of focusable elements.
*/
set activeIndex(newIndex: number | undefined);
/**
* ## handleIndexUp
*
* Handles index up for keyboard navigation. Increases with right arrow press.
*/
handleIndexUp(): void;
/**
* ## handleIndexDown
*
* Handles index down for keyboard navigation. Decreases with left arrow press.
*/
handleIndexDown(): void;
/**
* ## handleKeyEvents
*
* Handles key events for control
* @param event
*/
handleKeyEvents(event: KeyboardEvent): void;
/**
* ## trapFocus
*
* A keyboard event handler that sets the focusable elements to the _focusableElements array and routes keys to the corresponding action.
*
* @param event
*/
trapFocus(event: KeyboardEvent): void;
handleBlur(event: Event): void;
/**
* ## gatherFocusableElements
*
* Queries the shadowRoot for 'fluent-button', 'fabric-citation' and 'fluent-menu-button'. These are the expected controls to be slotted into the reference.
*/
gatherFocusableElements(): void;
connectedCallback(): void;
disconnectedCallback(): void;
}
//# sourceMappingURL=reference.d.ts.map