import { LitElement, TemplateResult, CSSResult } from '@rxdi/lit-html';
interface TemplateOptions<T> {
    templateUrl: Promise<{
        default: typeof import('*.html');
    }>;
    selector: string;
    template?: (self: T) => TemplateResult;
    style?: CSSResult;
    styles?: CSSResult[];
    useShadow?: boolean;
    extends?: string;
    container?: Element | DocumentFragment;
    providers?: Function[];
}
export declare function Template<T>(options: TemplateOptions<T>): (target: typeof LitElement) => never;
export {};
