@flanksource/clicky-ui
Version:
Flanksource Clicky UI — React component library built on shadcn/ui with light/dark and density theming.
109 lines • 2.82 kB
TypeScript
import { ClickyNode } from '../data/Clicky';
export interface ExecutionRequest {
args?: string[];
flags?: Record<string, string>;
}
export interface ExecutionResponse {
success: boolean;
message?: string;
output?: string;
stdout?: string;
stderr?: string;
exit_code: number;
error?: string;
cli?: string;
input?: ExecutionRequest;
contentType?: string;
requestUrl?: string;
blob?: Blob;
parsed?: unknown;
}
export interface OpenAPISchema {
type?: string;
format?: string;
default?: unknown;
enum?: unknown[];
description?: string;
properties?: Record<string, OpenAPISchema>;
}
export interface OpenAPIParameter {
name: string;
in: "query" | "path" | "header";
description?: string;
required?: boolean;
schema?: OpenAPISchema;
}
export interface OpenAPIOperation {
tags?: string[];
summary?: string;
description?: string;
operationId?: string;
parameters?: OpenAPIParameter[];
requestBody?: {
content?: Record<string, {
schema?: OpenAPISchema;
}>;
};
responses: Record<string, unknown>;
"x-clicky"?: ClickyOperationMeta;
}
export interface OpenAPISpec {
openapi: string;
info: {
title: string;
description?: string;
version: string;
};
paths: Record<string, Record<string, OpenAPIOperation>>;
tags?: Array<{
name: string;
description?: string;
}>;
"x-clicky"?: ClickySpecMeta;
}
export interface ResolvedOperation {
path: string;
method: string;
operation: OpenAPIOperation;
}
export interface DomainDefinition {
key: string;
title: string;
description: string;
emptyTitle?: string;
emptyDescription?: string;
}
export interface ClickySpecMeta {
surfaces?: ClickySurface[];
}
export interface ClickySurface {
key: string;
entity: string;
title: string;
parent?: string;
admin?: boolean;
description?: string;
}
export interface ClickyOperationMeta {
command?: string;
surface?: string;
verb: "list" | "get" | "create" | "update" | "delete" | "action";
scope: "collection" | "entity";
actionName?: string;
idParam?: string;
supportsLookup?: boolean;
supportsFilterMode?: boolean;
}
export type OperationLookupFilterType = "bool" | "number" | "date" | "from" | "to" | "multi-filter";
export interface OperationLookupFilter {
label?: string;
options?: Record<string, ClickyNode>;
selected?: Record<string, ClickyNode>;
multi?: boolean;
type?: OperationLookupFilterType;
}
export interface OperationLookupResponse {
filters: Record<string, OperationLookupFilter>;
}
export declare function isPositionalParam(p: OpenAPIParameter): boolean;
//# sourceMappingURL=types.d.ts.map