import { JsxNode } from '@arcgis/lumina';
import { Ref } from 'lit/directives/ref.js';
import { Context, FeedbackState, IconName } from './types';
declare const strings: (value: {
    arcadeassistant: string;
    beta: string;
    expressionapplied: string;
    askaquestion: string;
    enteraprompt: string;
    assistantresponse: string;
    providefeedback: string;
    experiencehelps: string;
    submitfeedback: string;
    addtoeditor: string;
    experiencehelpful: string;
    describeexperience: string;
    besteffort: string;
    ask: string;
    disclaimercomment: string;
    feedback: string;
    erroroccurred: string;
    recentprompts: string;
    generatingresponse: string;
    introducing: string;
    capabilities: string;
    aiassistants: string;
    useofassistant: string;
    configureassistants: string;
    settings: string;
    new: string;
    learnmore: string;
    welcome: string;
    beforeyougetstarted: string;
    maybeincorrect: string;
    pleasereadhelp: string;
    proceed: string;
    exit: string;
    promptsuggestions: string;
    promptsuggestion: string;
    assistantresponses: string;
    collapse: string;
    thumbsup: string;
    thumbsdown: string;
    refine: string;
    startover: string;
    helptopic: string;
    agreement: string;
    esriprivacystatement: string;
    supplement: string;
    disclaimerpt2: string;
    replaceineditor: string;
    keepinmind: string;
    beconsise: string;
    avoidambiguity: string;
    documentation: string;
    useexamples: string;
    moredetails: string;
    seedocumentation: string;
    assistantinformation: string;
    profilecontextlabel: string;
    layercontextlabel: string;
    numlayers: string;
    numlayersplural: string;
    numlayerssingular: string;
    responsecontext: string;
    error: string;
    copytoclipboard: string;
    copyprompttoclipboard: string;
    copiedsuccessfully: string;
    helpful: string;
    unhelpful: string;
    prompsuggestion1: string;
    prompsuggestion2: string;
}) => {
    arcadeassistant: string;
    beta: string;
    expressionapplied: string;
    askaquestion: string;
    enteraprompt: string;
    assistantresponse: string;
    providefeedback: string;
    experiencehelps: string;
    submitfeedback: string;
    addtoeditor: string;
    experiencehelpful: string;
    describeexperience: string;
    besteffort: string;
    ask: string;
    disclaimercomment: string;
    feedback: string;
    erroroccurred: string;
    recentprompts: string;
    generatingresponse: string;
    introducing: string;
    capabilities: string;
    aiassistants: string;
    useofassistant: string;
    configureassistants: string;
    settings: string;
    new: string;
    learnmore: string;
    welcome: string;
    beforeyougetstarted: string;
    maybeincorrect: string;
    pleasereadhelp: string;
    proceed: string;
    exit: string;
    promptsuggestions: string;
    promptsuggestion: string;
    assistantresponses: string;
    collapse: string;
    thumbsup: string;
    thumbsdown: string;
    refine: string;
    startover: string;
    helptopic: string;
    agreement: string;
    esriprivacystatement: string;
    supplement: string;
    disclaimerpt2: string;
    replaceineditor: string;
    keepinmind: string;
    beconsise: string;
    avoidambiguity: string;
    documentation: string;
    useexamples: string;
    moredetails: string;
    seedocumentation: string;
    assistantinformation: string;
    profilecontextlabel: string;
    layercontextlabel: string;
    numlayers: string;
    numlayersplural: string;
    numlayerssingular: string;
    responsecontext: string;
    error: string;
    copytoclipboard: string;
    copyprompttoclipboard: string;
    copiedsuccessfully: string;
    helpful: string;
    unhelpful: string;
    prompsuggestion1: string;
    prompsuggestion2: string;
};
export declare function AboutDisplay({ messages }: {
    messages: Partial<ReturnType<typeof strings>>;
}): JsxNode;
export declare function DisclaimerDisplay({ popoverContent }: {
    popoverContent: JsxNode;
}): JsxNode;
export declare function ErrorDisplay({ errorMessage, slot }: {
    errorMessage: JsxNode | string;
    slot?: string;
}): JsxNode;
export declare function ConfirmationDisplay({ active, setActive, messages, }: {
    active: boolean;
    setActive: (e: boolean) => void;
    messages: Partial<ReturnType<typeof strings>>;
}): JsxNode;
export declare function ContextDisplay({ context, messages, }: {
    context?: Context;
    messages: Partial<ReturnType<typeof strings>>;
}): JsxNode;
export declare function SubmissionDisplay({ isDisabled, isReadOnly, setQuestion, setIsViewingResult, textAreaRef, question, errorMessage, setErrorMessage, submitQuestion, messages, mode, context, }: {
    isDisabled: boolean;
    isReadOnly: boolean;
    setQuestion: (e: string) => void;
    setIsViewingResult: (e: boolean) => void;
    textAreaRef: Ref<HTMLCalciteTextAreaElement>;
    question: string;
    errorMessage?: string;
    setErrorMessage: (e: string) => void;
    submitQuestion: () => Promise<void>;
    messages: Partial<ReturnType<typeof strings>>;
    mode: "prompt" | "refine";
    context?: Context;
}): JsxNode;
export declare function FeedbackSheetDisplay({ setOpen, messages, feedback, setFeedback, onSubmit, }: {
    setOpen: (open: boolean) => void;
    messages: Partial<ReturnType<typeof strings>>;
    feedback: FeedbackState;
    setFeedback: (feedback: FeedbackState) => void;
    onSubmit: () => void;
}): JsxNode;
export declare function InfoDisplay({ assistantsEnabled, messages, slot, assistantHelpUrl, helpTopicUrl, }: {
    assistantsEnabled: boolean;
    assistantHelpUrl: string;
    helpTopicUrl: string;
    messages: Partial<ReturnType<typeof strings>>;
    slot?: HTMLCalciteBlockElement["slot"];
}): JsxNode;
export declare function SplashDisplay({ messages, onProceed, onExit, helpTopicUrl, }: {
    messages: Partial<ReturnType<typeof strings>>;
    onProceed: () => void;
    onExit: (e: Event) => void;
    helpTopicUrl: string;
}): JsxNode;
export declare function PromptSuggestionsDisplay({ messages, suggestions, onSuggestionClick, }: {
    suggestions: string[];
    onSuggestionClick: (value: string) => void;
    messages: Partial<ReturnType<typeof strings>>;
}): JsxNode;
export interface ResponseDisplayCardChip {
    label: string;
    icon?: IconName;
    tooltip?: string;
    scale?: "l" | "m" | "s";
    appearance?: "outline-fill" | "outline" | "solid";
    /** need a unique id for each convo for tooltip reference-ids */
    conversationId: string;
}
export interface ResponseDisplayCard {
    priorPrompt: string;
    code: string;
    message?: string;
    chips?: ResponseDisplayCardChip[];
    onAddToEditor: (insertMode: "add" | "replace") => void;
    onThumbsUp: () => void;
    onThumbsDown: () => void;
    conversationId: string;
}
export declare function ResponseDisplay({ hidden, expanded, messages, cards, heading, collapsible, showEffectsIcon, onCopyCode, standalone, }: {
    hidden?: boolean;
    expanded?: boolean;
    heading?: string;
    messages: Partial<ReturnType<typeof strings>>;
    cards: ResponseDisplayCard[];
    showEffectsIcon?: boolean;
    collapsible?: boolean;
    editorInsertMode?: "add" | "replace";
    setEditorInsertMode?: (mode: "add" | "replace") => void;
    onCopyCode: (code: string) => Promise<void>;
    standalone?: boolean;
}): JsxNode;
export {};
