/** * Dashboard API * Dashboard API documentation * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { AdminActionRequestStatus } from './AdminActionRequestStatus'; import { AdminActionRequestUser } from './AdminActionRequestUser'; import { AdminActionResponseItem } from './AdminActionResponseItem'; import { AdminActionType } from './AdminActionType'; /** * An admin action that may require approval before execution. When approval mode is enabled, sensitive actions create a pending request. When disabled, actions are auto-approved with an audit record. * @export * @interface AdminActionRequest */ export interface AdminActionRequest { /** * * @type {string} * @memberof AdminActionRequest */ id: string; /** * The organization this action belongs to. * @type {string} * @memberof AdminActionRequest */ organizationId: string; /** * The environment this action targets. Null for org-level actions. * @type {string} * @memberof AdminActionRequest */ environmentId?: string | null; /** * The admin who initiated this action. * @type {string} * @memberof AdminActionRequest */ submittedById: string; /** * * @type {AdminActionRequestUser} * @memberof AdminActionRequest */ submittedBy?: AdminActionRequestUser; /** * Review responses from admins, one row per reviewer per request. Under quorum, multiple approve responses may accumulate before the request reaches requiredApprovals and transitions to approved. * @type {Array} * @memberof AdminActionRequest */ responses?: Array; /** * * @type {AdminActionRequestStatus} * @memberof AdminActionRequest */ status: AdminActionRequestStatus; /** * * @type {AdminActionType} * @memberof AdminActionRequest */ actionType: AdminActionType; /** * Human-readable action label shown in the Activity Queue, e.g. "Reset MFA for alice@example.com" or "Environment Lock". * @type {string} * @memberof AdminActionRequest */ displayName: string; /** * Grouping label for the Activity Queue table, e.g. "Security" or "User Management". * @type {string} * @memberof AdminActionRequest */ category: string; /** * The type of entity this action targets, e.g. "user" or "provider". Null for settings changes. * @type {string} * @memberof AdminActionRequest */ targetEntityType?: string | null; /** * The ID of the target entity. Null for settings changes. * @type {string} * @memberof AdminActionRequest */ targetEntityId?: string | null; /** * State before the change. Shape varies by actionType. Used for display and conflict detection. * @type {object} * @memberof AdminActionRequest */ previousState?: object | null; /** * What to apply when approved. Shape varies by actionType — for settings_change includes fullSettingsSnapshot, for reset_user_mfa includes userId and resetAll flag, for delete_user includes userId and email. * @type {object} * @memberof AdminActionRequest */ actionPayload: object; /** * Number of distinct admin approvals needed to execute this request, snapshotted from the organization settings at creation time. Subsequent changes to the org setting do not affect in-flight requests. * @type {number} * @memberof AdminActionRequest */ requiredApprovals: number; /** * Number of approvals received so far. The request transitions to approved when this reaches requiredApprovals. A single deny at any point transitions the request to denied regardless of this counter. * @type {number} * @memberof AdminActionRequest */ currentApprovals: number; /** * When this request expires if still pending. Calculated as createdAt + TTL hours. * @type {Date} * @memberof AdminActionRequest */ expiresAt: Date; /** * When the request was approved, denied, or expired. Null while pending. * @type {Date} * @memberof AdminActionRequest */ resolvedAt?: Date | null; /** * * @type {Date} * @memberof AdminActionRequest */ createdAt: Date; } export declare function AdminActionRequestFromJSON(json: any): AdminActionRequest; export declare function AdminActionRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AdminActionRequest; export declare function AdminActionRequestToJSON(value?: AdminActionRequest | null): any;