API Report File for “vortex-showcase”

Do not edit this file. It is a report generated by API Extractor.


import { IExtensionApi } from 'vortex-api/lib/types/api';
import { IMod } from 'vortex-api/lib/types/api';

// @public (undocumented)
export interface IShowcaseAction {
    // (undocumented)
    isEnabled?(renderer: string): boolean;
    // (undocumented)
    runAction(renderer: string, output: string): Promise<void>;
}

// @public
export interface IShowcaseRenderer {
    allowSave?(): boolean;
    createFileName?(title: string): string | undefined;
    createModel(api: IExtensionApi, mod: IMod, defaultModelFn?: () => ModInfoDisplay): ModInfoDisplay;
    createShowcase(api: IExtensionApi, model: ITemplateModel): Promise<string>;
    isEnabled?(gameId: string): boolean;
}

// @public (undocumented)
export interface ITemplateModel {
    // (undocumented)
    game: string;
    // (undocumented)
    mods: ModInfoDisplay[];
    // (undocumented)
    title: string;
    // (undocumented)
    user: string;
}

// @public (undocumented)
export type ModDeploymentMeta = {
    order?: number;
    time?: Date;
};

// @public (undocumented)
export class ModInfoDisplay {
    // (undocumented)
    author: string;
    // (undocumented)
    category?: string;
    // (undocumented)
    deployment: ModDeploymentMeta;
    // (undocumented)
    description: string;
    // (undocumented)
    gameId: string;
    // (undocumented)
    gameName: string;
    // (undocumented)
    image?: string;
    // (undocumented)
    installed?: string;
    // (undocumented)
    link?: string;
    // (undocumented)
    meta: any;
    // (undocumented)
    name: string;
    // (undocumented)
    nexus?: NexusInfo;
    // (undocumented)
    notes: string;
    // (undocumented)
    source: string;
    // (undocumented)
    type: string;
    // (undocumented)
    version: string;
}

// @public (undocumented)
export interface NexusInfo {
    // (undocumented)
    endorsed: boolean;
    // (undocumented)
    fileId: number;
    // (undocumented)
    id: number;
    // (undocumented)
    uploaded: Date;
}

// @public (undocumented)
export type showcaseAPI = {
    addShowcaseRenderer: (key: string, rendererFunc: () => IShowcaseRenderer) => void;
    addShowcaseAction: (key: string, actionFn: () => IShowcaseAction) => void;
    createShowcase: (mods?: string[], format?: string, action?: string) => Promise<void>;
};