friday-widgets
Version:
Professional embeddable accounting widgets for vertical SaaS platforms. Layer Financial-inspired design with comprehensive financial reporting capabilities.
35 lines • 1.34 kB
TypeScript
/**
* Base Widget Class - Layer Financial Inspired Design System
*
* Provides common functionality for all Friday widgets with professional styling
*/
import { LitElement, CSSResultGroup } from 'lit';
import { FridayApiClient } from './api-client.js';
export declare abstract class BaseWidget extends LitElement {
apiKey: string;
businessId: string;
theme: 'light' | 'dark' | 'auto';
baseUrl: string;
protected loading: boolean;
protected error: string | null;
protected apiClient: FridayApiClient | null;
abstract render(): unknown;
connectedCallback(): void;
private initializeApiClient;
protected loadData(): Promise<void>;
protected setError(message: string): void;
protected clearError(): void;
protected handleApiError(error: any, context?: string): void;
protected makeApiRequest<T>(requestFn: () => Promise<{
success: boolean;
data?: T;
error?: string;
details?: string;
}>, errorContext?: string): Promise<T | null>;
protected setLoading(loading: boolean): void;
protected emitEvent(type: string, data?: any): void;
renderLoading(): import("lit-html").TemplateResult<1>;
renderError(): import("lit-html").TemplateResult<1>;
static get baseStyles(): CSSResultGroup;
}
//# sourceMappingURL=base-widget.d.ts.map