@vertical-insure/web-components
Version: 
Vertical Insure Web Components using Lit and Open Web Standards
32 lines (31 loc) • 1.07 kB
TypeScript
import { Customer } from '../lib/model/customer';
import { ReactiveController, TemplateResult } from "lit";
import { Policy } from "./model/policy";
import { PolicyAttributes } from "./model/policy-attributes";
import { QuoteElement } from "./quote-element";
export type StatusRenderer = {
    pending?: () => TemplateResult;
    complete?: (value: unknown) => TemplateResult;
    error?: (e: Error | undefined) => TemplateResult;
};
declare enum Status {
    PENDING = 0,
    COMPLETE = 1,
    ERROR = 2
}
export declare class QuoteController<T extends PolicyAttributes> implements ReactiveController {
    host: QuoteElement<T>;
    onChange: () => void;
    value?: Policy<T>;
    status: Status;
    error?: Error;
    policyAttributes?: T;
    metadata?: unknown;
    customer?: Customer;
    constructor(host: QuoteElement<T>, onChange: () => void);
    hostUpdate(): Promise<void>;
    loadQuote(): Promise<void>;
    render(renderer: StatusRenderer): TemplateResult;
    _pendingRenderWrapper(renderer: StatusRenderer): TemplateResult | undefined;
}
export {};