import * as lit_html from 'lit-html';
import * as lit from 'lit';
import { LitElement, PropertyValues } from 'lit';
import * as lodash from 'lodash';
import { c as TId, b as TNumericId, d as TCart, L as LANGUAGES } from '../chunks/utils-BPcZ5h8J.esm.js';
import 'lodash-es/debounce';
import 'lodash-es/isEqual';
interface TRequiredConfig {
apiKey: string;
transactionId: TId;
}
declare class BeamRedeemTransaction extends LitElement {
static tagName: string;
baseUrl: string;
apiKey?: TRequiredConfig["apiKey"];
transactionId?: TRequiredConfig["transactionId"];
storeId?: TNumericId;
countryCode?: string;
postalCode?: string;
cart?: TCart;
selectedNonprofitId?: TNumericId;
lang: LANGUAGES;
debug: boolean;
draftConfig: boolean;
private isMobile;
private didUserExpandNonprofits;
private shouldUsePromoUI;
get configLang(): LANGUAGES;
private get hasCorrectTransactionConfig();
private getChainNonprofits;
private updateNonprofitIdForRecord;
private putTransaction;
private nonprofitListDataController;
private selectionDataController;
private localStorage;
connectedCallback(): void;
firstUpdated(_changedProperties: PropertyValues): Promise;
updated(previousPropertyValues: PropertyValues): Promise;
disconnectedCallback(): void;
private restoreStateFromCache;
/**
* Factory for selection event handler
*
* Nonprofit selector implements radio-button semantics:
* * If nothing is selected, tabbing into selector selects first card
* * Arrow keys changes focus between cards, but doesn't select
* * Enter/Space sets selection
* * If a nonprofit is selected, arrow keys change focus AND selection
* * Click sets selection
* @param {number} id
* @param {number} index
* @param {{id: number}[]} nonprofits
* @returns {(evt: Event) => void}
*/
private makeHandleSelect;
get allowChange(): boolean;
get allowSubmit(): boolean;
handleSubmit: () => Promise;
evaluateBreakPoints: lodash.DebouncedFuncLeading<() => void>;
get cssVariables(): any;
static styles: lit.CSSResult[];
private handleChooseClick;
get shouldCollapse(): boolean;
private renderSubmitButton;
private renderRadioButton;
private renderNonprofitImage;
private renderOptionDetail;
private renderProgressBar;
private renderNonprofitDetails;
private renderPromoPill;
protected render(): "" | lit_html.TemplateResult<1>;
}
declare global {
interface HTMLElementTagNameMap {
"beam-redeem-transaction": BeamRedeemTransaction;
}
}
export { BeamRedeemTransaction };