import { Ast } from 'thingtalk'; import ThingpediaLoader from '../load-thingpedia'; import { ContextInfo, NameList } from '../state_manip'; import { SlotBag } from '../slot_bag'; import { DirectAnswerPhrase } from './results'; export interface ListProposal { results: Ast.DialogueHistoryResultItem[]; info: SlotBag | null; action: Ast.Invocation | null; hasLearnMore: boolean; } export declare function listProposalKeyFn({ results, info, action, hasLearnMore }: ListProposal): { idType: import("thingtalk/dist/type").default | null; queryName: string | null; actionName: string | null; length: number; }; declare function checkListProposal(nameList: NameList, info: SlotBag | null, hasLearnMore: boolean): ListProposal | null; export declare type ThingpediaListProposal = [ContextInfo, SlotBag]; export declare function checkThingpediaListProposal(proposal: ThingpediaListProposal, additionalInfo: SlotBag | null): ListProposal | null; export declare function addActionToListProposal(nameList: NameList, action: Ast.Invocation): ListProposal | null; export declare function makeListProposalFromDirectAnswers(...phrases: DirectAnswerPhrase[]): ListProposal | null; declare function makeListProposalReply(ctx: ContextInfo, proposal: ListProposal): import("../../sentence-generator/types").AgentReplyRecord; declare function positiveListProposalReply(loader: ThingpediaLoader, ctx: ContextInfo, [name, acceptedAction, mustHaveAction]: [Ast.Value, Ast.Invocation | null, boolean]): Ast.DialogueState | null; declare function positiveListProposalReplyActionByName(loader: ThingpediaLoader, ctx: ContextInfo, action: Ast.Invocation): Ast.DialogueState | null; declare function negativeListProposalReply(ctx: ContextInfo, [preamble, request]: [Ast.Expression | null, Ast.Expression | null]): Ast.DialogueState | null; declare function listProposalLearnMoreReply(ctx: ContextInfo, name: Ast.Value): Ast.DialogueState | null; export { checkListProposal, makeListProposalReply, positiveListProposalReply, positiveListProposalReplyActionByName, listProposalLearnMoreReply, negativeListProposalReply };