ignore folder
This commit is contained in:
101
types/api.ts
Normal file
101
types/api.ts
Normal file
@ -0,0 +1,101 @@
|
||||
export type ApiResponse<T> = {
|
||||
success: boolean;
|
||||
message: string;
|
||||
data: T;
|
||||
timestamp: string;
|
||||
};
|
||||
|
||||
export type LoginRequest = { username: string; password: string };
|
||||
export type LoginResponseData = {
|
||||
tokenType: string;
|
||||
accessToken: string;
|
||||
refreshToken: string;
|
||||
expiresInSeconds: number;
|
||||
};
|
||||
|
||||
export type UserProfile = {
|
||||
tenantId: string;
|
||||
username: string;
|
||||
roles: string[];
|
||||
permissions: string[];
|
||||
};
|
||||
|
||||
export type TenantContextResponse = { tenantId: string };
|
||||
|
||||
export type UserCreateRequest = {
|
||||
username: string;
|
||||
password?: string;
|
||||
ldapDn?: string;
|
||||
enabled?: boolean;
|
||||
roleCodes: string[];
|
||||
};
|
||||
|
||||
export type UpdateUserRolesRequest = { username: string; roleCodes: string[] };
|
||||
export type RoleCreateRequest = { code: string; name: string; permissionCodes: string[] };
|
||||
export type UpdateRolePermissionRequest = { code: string; permissionCodes: string[] };
|
||||
|
||||
export type WorkflowStatus = "DRAFT" | "PENDING" | "APPROVED" | "REJECTED";
|
||||
|
||||
export enum WorkflowResourceType {
|
||||
USER_MANAGEMENT = "USER_MANAGEMENT",
|
||||
ROLE_MANAGEMENT = "ROLE_MANAGEMENT",
|
||||
OTHER = "OTHER"
|
||||
}
|
||||
|
||||
export type WorkflowRequestItem = {
|
||||
id: string;
|
||||
tenantId: string;
|
||||
resourceType: string;
|
||||
resourceId: string;
|
||||
makerUsername: string;
|
||||
payload: string;
|
||||
status: WorkflowStatus;
|
||||
requiredSteps: number;
|
||||
currentStep: number;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
};
|
||||
|
||||
export type WorkflowFilters = {
|
||||
status?: WorkflowStatus | "";
|
||||
resourceType?: string;
|
||||
makerUsername?: string;
|
||||
limit?: number;
|
||||
};
|
||||
|
||||
export type WorkflowActionPayload = { notes?: string; checkerRole?: string };
|
||||
|
||||
export type ApprovalResponse = {
|
||||
id: string;
|
||||
status: WorkflowStatus;
|
||||
requiredSteps: number;
|
||||
currentStep: number;
|
||||
};
|
||||
|
||||
export type WorkflowCreateRequest = {
|
||||
resourceType: string;
|
||||
resourceId: string;
|
||||
payload?: string;
|
||||
requiredSteps: number;
|
||||
};
|
||||
|
||||
export type AuditItem = {
|
||||
id: string;
|
||||
tenantId: string;
|
||||
actor: string;
|
||||
correlationId: string;
|
||||
action: string;
|
||||
domain: string;
|
||||
resourceType: string;
|
||||
resourceId: string;
|
||||
outcome: string;
|
||||
httpMethod: string;
|
||||
requestPath: string;
|
||||
beforeState?: string;
|
||||
afterState?: string;
|
||||
details?: string;
|
||||
createdAt: string;
|
||||
};
|
||||
|
||||
export type ModuleItem = { code: string; name: string; enabled: boolean };
|
||||
export type ToggleModuleRequest = { enabled: boolean };
|
||||
Reference in New Issue
Block a user