@kintone/rest-api-client
Version:
Kintone REST API client for JavaScript
342 lines (341 loc) • 9.73 kB
TypeScript
import type { AppID, RecordID, Revision, Properties, AppLang, Layout, ViewForResponse, ViewForParameter, App, StateForResponse, StateForParameter, ActionForResponse, ActionForParameter, DeployStatus, FieldRightForResponse, FieldRightForParameter, AppRightEntityForResponse, AppRightEntityForParameter, EvaluatedRecordRight, RecordRightForResponse, RecordRightForParameter, AppCustomizeScope, AppCustomizeForResponse, AppCustomizeForParameter, GeneralNotificationForParameter, GeneralNotificationForResponse, PerRecordNotificationForParameter, PerRecordNotificationForResponse, ReminderNotificationForParameter, ReminderNotificationForResponse, ReportForParameter, ReportForResponse, AppActionsForParameter, AppActionsForResponse, AdminNotes, AdminNotesForParameter, SpaceID, PluginLocale, GetStatisticsRequest, GetStatisticsResponse } from "./types";
import { BaseClient } from "./BaseClient";
import type { AppPlugin } from "./types/app/plugin";
import type { GetAppSettingsForRequest, GetAppSettingsForResponse, UpdateAppSettingsForRequest, UpdateAppSettingsForResponse } from "./types/app/setting";
type RowLayoutForParameter = {
type: "ROW";
fields: Array<{
[key: string]: unknown;
}>;
};
type SubtableLayoutForParameter = {
type: "SUBTABLE";
code: string;
fields: Array<{
[key: string]: unknown;
}>;
};
type GroupLayoutForParameter = {
type: "GROUP";
code: string;
layout: RowLayoutForParameter[];
};
type LayoutForParameter = Array<RowLayoutForParameter | SubtableLayoutForParameter | GroupLayoutForParameter>;
type NestedPartial<T> = T extends object ? {
[K in keyof T]?: NestedPartial<T[K]>;
} : T;
type PropertiesForParameter = NestedPartial<Properties>;
export declare class AppClient extends BaseClient {
getFormFields<T extends Properties>(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
properties: T;
revision: string;
}>;
addFormFields(params: {
app: AppID;
properties: PropertiesForParameter;
revision?: Revision;
}): Promise<{
revision: string;
}>;
updateFormFields(params: {
app: AppID;
properties: PropertiesForParameter;
revision?: Revision;
}): Promise<{
revision: string;
}>;
deleteFormFields(params: {
app: AppID;
fields: string[];
revision?: Revision;
}): Promise<object>;
getFormLayout<T extends Layout>(params: {
app: AppID;
preview?: boolean;
}): Promise<{
layout: T;
revision: string;
}>;
updateFormLayout(params: {
app: AppID;
layout: LayoutForParameter;
revision?: Revision;
}): Promise<{
revision: string;
}>;
getViews(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
views: {
[viewName: string]: ViewForResponse;
};
revision: string;
}>;
updateViews(params: {
app: AppID;
views: {
[viewName: string]: ViewForParameter;
};
revision?: Revision;
}): Promise<{
views: {
[viewName: string]: {
id: string;
};
};
revision: string;
}>;
getApp(params: {
id: AppID;
}): Promise<App>;
getApps(params: {
ids?: AppID[] | null;
codes?: string[] | null;
name?: string | null;
spaceIds?: Array<string | number> | null;
limit?: string | number;
offset?: string | number;
}): Promise<{
apps: App[];
}>;
addApp(params: {
name: string;
space?: string | number;
}): Promise<{
app: string;
revision: string;
}>;
getAppSettings(params: GetAppSettingsForRequest): Promise<GetAppSettingsForResponse>;
updateAppSettings(params: UpdateAppSettingsForRequest): Promise<UpdateAppSettingsForResponse>;
getProcessManagement(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
enable: boolean;
states: {
[statusName: string]: StateForResponse;
} | null;
actions: ActionForResponse[] | null;
revision: string;
}>;
updateProcessManagement(params: {
app: AppID;
enable?: boolean;
states?: {
[statusName: string]: StateForParameter;
};
actions?: ActionForParameter[];
revision?: Revision;
}): Promise<{
revision: string;
}>;
getDeployStatus(params: {
apps: AppID[];
}): Promise<{
apps: Array<{
app: string;
status: DeployStatus;
}>;
}>;
deployApp(params: {
apps: Array<{
app: AppID;
revision?: Revision;
}>;
revert?: boolean;
}): Promise<{}>;
getFieldAcl(params: {
app: AppID;
preview?: boolean;
}): Promise<{
rights: FieldRightForResponse[];
revision: string;
}>;
updateFieldAcl(params: {
app: AppID;
rights: FieldRightForParameter[];
revision?: Revision;
}): Promise<{
revision: string;
}>;
getAppAcl(params: {
app: AppID;
preview?: boolean;
}): Promise<{
rights: AppRightEntityForResponse[];
revision: string;
}>;
updateAppAcl(params: {
app: AppID;
rights: AppRightEntityForParameter[];
revision?: Revision;
}): Promise<{
revision: string;
}>;
evaluateRecordsAcl(params: {
app: AppID;
ids: RecordID[];
}): Promise<{
rights: EvaluatedRecordRight[];
}>;
getRecordAcl(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
rights: RecordRightForResponse[];
revision: string;
}>;
updateRecordAcl(params: {
app: AppID;
rights: RecordRightForParameter[];
revision?: Revision;
}): Promise<{
revision: string;
}>;
getAppCustomize(params: {
app: AppID;
preview?: boolean;
}): Promise<{
scope: AppCustomizeScope;
desktop: AppCustomizeForResponse;
mobile: AppCustomizeForResponse;
revision: string;
}>;
updateAppCustomize(params: {
app: AppID;
scope?: AppCustomizeScope;
desktop?: AppCustomizeForParameter;
mobile?: AppCustomizeForParameter;
revision?: Revision;
}): Promise<{
revision: string;
}>;
getGeneralNotifications(params: {
app: AppID;
preview?: boolean;
}): Promise<{
notifications: GeneralNotificationForResponse[];
notifyToCommenter: boolean;
revision: string;
}>;
updateGeneralNotifications(params: {
app: AppID;
notifications?: GeneralNotificationForParameter[];
notifyToCommenter?: boolean;
revision?: Revision;
}): Promise<{
revision: string;
}>;
getPerRecordNotifications(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
notifications: PerRecordNotificationForResponse[];
revision: string;
}>;
updatePerRecordNotifications(params: {
app: AppID;
notifications: PerRecordNotificationForParameter[];
revision?: Revision;
}): Promise<{
revision: string;
}>;
getReminderNotifications(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
notifications: ReminderNotificationForResponse[];
timezone: string;
revision: string;
}>;
updateReminderNotifications(params: {
app: AppID;
notifications?: ReminderNotificationForParameter[];
timezone?: string;
revision?: Revision;
}): Promise<{
revision: string;
}>;
getReports(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
reports: {
[reportName: string]: ReportForResponse;
};
revision: string;
}>;
updateReports(params: {
app: AppID;
reports: ReportForParameter;
revision?: Revision;
}): Promise<{
revision: string;
reports: {
[reportName: string]: {
id: string;
};
};
}>;
getAppActions(params: {
app: AppID;
lang?: AppLang;
preview?: boolean;
}): Promise<{
actions: AppActionsForResponse;
revision: string;
}>;
updateAppActions(params: {
app: AppID;
actions: AppActionsForParameter;
revision?: Revision;
}): Promise<{
revision: string;
actions: {
[actionName: string]: {
id: string;
};
};
}>;
getAdminNotes(params: {
app: AppID;
preview?: boolean;
}): Promise<AdminNotes & {
revision: string;
}>;
updateAdminNotes(params: AdminNotesForParameter): Promise<{
revision: string;
}>;
move(params: {
app: AppID;
space?: SpaceID | null;
}): Promise<{}>;
getPlugins(params: {
app: AppID;
lang?: PluginLocale;
preview?: boolean;
}): Promise<{
plugins: AppPlugin[];
revision: string;
}>;
addPlugins(params: {
app: AppID;
ids: string[];
revision?: Revision;
}): Promise<{
revision: string;
}>;
getStatistics(params: GetStatisticsRequest): Promise<GetStatisticsResponse>;
}
export {};