9s-fe-core
Version:
Core functionalities for authentication, configuration, and repository management.
82 lines (81 loc) • 1.97 kB
TypeScript
import { HttpMethod } from '../../repository';
import { FieldSubTypeEnum } from '../enums/field-subtype.enum';
import { FieldTypeEnum } from '../enums/field-type.enum';
export interface SchemaModel {
type: string;
page: Page;
[key: string]: any;
}
export interface ActionModel {
action: string;
name: string;
is_enable: boolean;
type: string;
color?: string;
}
export interface Page {
title: string;
actions: ActionModel[];
}
export interface WorkflowModel {
keys: string[];
name: string;
description?: string;
isValid: boolean;
}
export interface ActionSchemaModel {
api: ApiSchemaModel;
response_fields: FieldTypeModel[];
workflows: WorkflowModel[];
actions: ActionModel[];
confirmation?: ConfirmationData;
}
export interface ApiSchemaModel {
url: string;
type?: string;
path: string;
required_fields: Record<string, any>[];
request_fields: FieldTypeModel[];
method: HttpMethod;
limit?: number;
}
export interface ConfirmationData {
title: string;
description: string;
messageSuccess: string;
buttonText: string;
}
export interface FieldTypeModel {
type: FieldTypeEnum;
key: string;
label?: string;
max_length: number;
show?: boolean;
type_sub: FieldSubTypeEnum;
is_required?: boolean;
select_options?: SelectOptionsModel;
related_fields?: string[];
refresh_change_fields?: string[];
array_fields?: FieldTypeModel[];
errorText?: string;
value?: any;
html?: HtmlModel;
}
export interface SelectOptionsModel {
field_display?: string;
responseFields: FieldTypeModel[];
values?: {
[key: string]: any;
}[];
field_submit?: string;
api?: ApiSchemaModel;
}
export declare const ConfirmationData: {
fromJson(json: any): ConfirmationData;
};
export interface HtmlModel {
placeholder?: string;
disabled?: boolean;
read_only?: boolean;
col?: number;
}