openvibe-sdk/frame
Generated at from
openvibe-contracts v0.44.0 and
openvibe-sdk v0.9.1.
From types/frame.d.ts (both). Declarations are shown verbatim.
interface FrameLink
export interface FrameLink { label: string; href: string; icon?: string; active?: boolean }interface FrameMenuItem
export interface FrameMenuItem { label: string; href?: string; icon?: string; onClick?: () => void; danger?: boolean; external?: boolean }interface FrameFooterConfig
export interface FrameFooterConfig {
links?: Array<{ heading: string; items: Array<{ name: string; url: string }> }>;
variant?: 'full' | 'compact';
/** This app's update log; default: https://openvibe.network/updates?site=<host>. */
updates?: string;
mount?: string;
[key: string]: unknown;
}interface FrameOptions
export interface FrameOptions {
/** Your app's id (brand and analytics). */
service?: string;
brand?: { name?: string; sub?: string; tld?: string; icon?: string; variant?: string };
links?: FrameLink[];
menu?: { before?: FrameMenuItem[]; after?: FrameMenuItem[] };
/** Same-origin endpoint answering { user } for your server session. */
sessionUrl?: string;
/** Sign-in URL; {url} = full return URL, {path} = its local path. */
loginUrl?: string;
/** Sign-out URL, so your server session ends too; {url} / {path} as for loginUrl. */
logoutUrl?: string;
silentLogin?: string;
/** Footer options, or false for no footer. */
footer?: FrameFooterConfig | false;
/** false: no "shipped X ago" line in the footer. */
shipped?: boolean;
/** false: do not load the shared theme loader. */
theme?: boolean;
/** Where the Frame is served (default https://openvibe.network). */
base?: string;
/** Extra navbar options passed through to OpenVibeNavbar.init. */
navbar?: Record<string, unknown>;
document?: unknown;
window?: unknown;
}interface FrameConfig
export interface FrameConfig { navbar: Record<string, unknown>; footer: Record<string, unknown> | null }interface FrameUrls
export interface FrameUrls { theme: string; navbar: string; footer: string; shipped: string }export export const DEFAULT_BASE: string;
export const DEFAULT_BASE: string;export export function scriptUrls(opts?: { base?: string }): FrameU
export function scriptUrls(opts?: { base?: string }): FrameUrls;export export function frameConfig(opts?: FrameOptions): FrameConfi
export function frameConfig(opts?: FrameOptions): FrameConfig;export export function frameTags(opts?: FrameOptions): { head: stri
export function frameTags(opts?: FrameOptions): { head: string; bodyStart: string; bodyEnd: string; config: FrameConfig; urls: FrameUrls };export export function mountFrame(opts?: FrameOptions): Promise<{ n
export function mountFrame(opts?: FrameOptions): Promise<{ navbar: unknown | null; footer: unknown | null }>;