export type PluginActionType = 'EXTRACT_SVG' | 'GET_FIGMA_ACCESS_TOKEN' | 'GET_GITHUB_ACCESS_TOKEN' | 'SET_FIGMA_ACCESS_TOKEN' | 'SET_GITHUB_ACCESS_TOKEN' | 'SYNC_COMPLETE_ACCESS_TOKEN'; export interface node { id: string; name: string; } export interface ExtractSvgPlugin { type: 'EXTRACT_SVG'; payload: { fileKey: string; nodes: node[]; ids: string; }; } export interface GetFigmaAccessTokenPlugin { type: 'GET_FIGMA_ACCESS_TOKEN'; payload: string; } export interface GetGithubAccessTokenPlugin { type: 'GET_GITHUB_ACCESS_TOKEN'; payload: string; } export interface SetFigmaAccessTokenPlugin { type: 'SET_FIGMA_ACCESS_TOKEN'; payload: string; } export interface SetGithubAccessTokenPlugin { type: 'SET_GITHUB_ACCESS_TOKEN'; payload: string; } export interface SyncCompleteAccessTokenPlugin { type: 'SYNC_COMPLETE_ACCESS_TOKEN'; payload: { token: string; type: 'SET_FIGMA_ACCESS_TOKEN' | 'SET_GITHUB_ACCESS_TOKEN'; }; } export type FigmaMessagePlugin = ExtractSvgPlugin | GetFigmaAccessTokenPlugin | GetGithubAccessTokenPlugin | SetFigmaAccessTokenPlugin | SetGithubAccessTokenPlugin | SyncCompleteAccessTokenPlugin; export interface FigmaMessageEvent { pluginMessage: FigmaMessagePlugin; }