Function isSeamActionAttemptError
- isSeamActionAttemptError<T>(error): error is SeamActionAttemptError<T>
 Type Parameters
- T extends 
    | { 
        action_attempt_id: string; 
        action_type: "LOCK_DOOR"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "LOCK_DOOR"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "LOCK_DOOR"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UNLOCK_DOOR"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UNLOCK_DOOR"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UNLOCK_DOOR"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SCAN_CREDENTIAL"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SCAN_CREDENTIAL"; 
        error: null; 
        result: { 
            acs_credential_on_encoder: null | { 
                card_number: null | string; 
                created_at: null | string; 
                ends_at: null | string; 
                is_issued: null | boolean; 
                starts_at: null | string; 
                visionline_metadata?: { 
                    cancelled: boolean; 
                    card_format: "TLCode" | "rfid48"; 
                    card_holder?: string; 
                    card_id: string; 
                    common_acs_entrance_ids?: string[]; 
                    discarded: boolean; 
                    expired: boolean; 
                    guest_acs_entrance_ids?: string[]; 
                    number_of_issued_cards: number; 
                    overridden?: boolean; 
                    overwritten: boolean; 
                    pending_auto_update: boolean; 
                }; 
            }; 
            acs_credential_on_seam: null | { 
                access_method: "code" | "card" | "mobile_key"; 
                acs_credential_id: string; 
                acs_credential_pool_id?: string; 
                acs_system_id: string; 
                acs_user_id?: string; 
                assa_abloy_vostio_metadata?: { 
                    door_names?: string[]; 
                    endpoint_id?: string; 
                    key_id?: string; 
                    key_issuing_request_id?: string; 
                    override_guest_acs_entrance_ids?: string[]; 
                }; 
                card_number?: null | string; 
                code?: null | string; 
                created_at: string; 
                display_name: string; 
                ends_at?: string; 
                errors: { 
                    error_code: string; 
                    message: string; 
                }[]; 
                external_type?: 
                    | "pti_card"
                    | "brivo_credential"
                    | "hid_credential"
                    | "visionline_card"
                    | "salto_ks_credential"
                    | "assa_abloy_vostio_key"
                    | "salto_space_key"; 
                external_type_display_name?: string; 
                is_issued?: boolean; 
                is_latest_desired_state_synced_with_provider?: null | boolean; 
                is_managed: true; 
                is_multi_phone_sync_credential?: boolean; 
                is_one_time_use?: boolean; 
                issued_at?: null | string; 
                latest_desired_state_synced_with_provider_at?: null | string; 
                parent_acs_credential_id?: string; 
                starts_at?: string; 
                visionline_metadata?: { 
                    auto_join?: boolean; 
                    card_function_type: "guest" | "staff"; 
                    card_id?: string; 
                    common_acs_entrance_ids?: string[]; 
                    credential_id?: string; 
                    guest_acs_entrance_ids?: string[]; 
                    is_valid?: boolean; 
                    joiner_acs_credential_ids?: string[]; 
                }; 
                warnings: (
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "waiting_to_be_issued"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "schedule_externally_modified"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "schedule_modified"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "being_deleted"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "unknown_issue_with_acs_credential"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "needs_to_be_reissued"; 
                    })[]; 
                workspace_id: string; 
            } | { 
                access_method: "code" | "card" | "mobile_key"; 
                acs_credential_id: string; 
                acs_credential_pool_id?: string; 
                acs_system_id: string; 
                acs_user_id?: string; 
                assa_abloy_vostio_metadata?: { 
                    door_names?: string[]; 
                    endpoint_id?: string; 
                    key_id?: string; 
                    key_issuing_request_id?: string; 
                    override_guest_acs_entrance_ids?: string[]; 
                }; 
                card_number?: null | string; 
                code?: null | string; 
                created_at: string; 
                display_name: string; 
                ends_at?: string; 
                errors: { 
                    error_code: string; 
                    message: string; 
                }[]; 
                external_type?: 
                    | "pti_card"
                    | "brivo_credential"
                    | "hid_credential"
                    | "visionline_card"
                    | "salto_ks_credential"
                    | "assa_abloy_vostio_key"
                    | "salto_space_key"; 
                external_type_display_name?: string; 
                is_issued?: boolean; 
                is_latest_desired_state_synced_with_provider?: null | boolean; 
                is_managed: false; 
                is_multi_phone_sync_credential?: boolean; 
                is_one_time_use?: boolean; 
                issued_at?: null | string; 
                latest_desired_state_synced_with_provider_at?: null | string; 
                parent_acs_credential_id?: string; 
                starts_at?: string; 
                visionline_metadata?: { 
                    auto_join?: boolean; 
                    card_function_type: "guest" | "staff"; 
                    card_id?: string; 
                    common_acs_entrance_ids?: string[]; 
                    credential_id?: string; 
                    guest_acs_entrance_ids?: string[]; 
                    is_valid?: boolean; 
                    joiner_acs_credential_ids?: string[]; 
                }; 
                warnings: (
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "waiting_to_be_issued"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "schedule_externally_modified"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "schedule_modified"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "being_deleted"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "unknown_issue_with_acs_credential"; 
                    }
                    | { 
                        created_at: string; 
                        message: string; 
                        warning_code: "needs_to_be_reissued"; 
                    })[]; 
                workspace_id: string; 
            }; 
            warnings: { 
                warning_code: "acs_credential_on_encoder_out_of_sync" | "acs_credential_on_seam_not_found"; 
                warning_message: string; 
            }[]; 
        }; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SCAN_CREDENTIAL"; 
        error: { 
            message: string; 
            type: "uncategorized_error"; 
        } | { 
            message: string; 
            type: "action_attempt_expired"; 
        } | { 
            message: string; 
            type: "no_credential_on_encoder"; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "ENCODE_CREDENTIAL"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "ENCODE_CREDENTIAL"; 
        error: null; 
        result: { 
            access_method: "code" | "card" | "mobile_key"; 
            acs_credential_id: string; 
            acs_credential_pool_id?: string; 
            acs_system_id: string; 
            acs_user_id?: string; 
            assa_abloy_vostio_metadata?: { 
                door_names?: string[]; 
                endpoint_id?: string; 
                key_id?: string; 
                key_issuing_request_id?: string; 
                override_guest_acs_entrance_ids?: string[]; 
            }; 
            card_number?: null | string; 
            code?: null | string; 
            created_at: string; 
            display_name: string; 
            ends_at?: string; 
            errors: { 
                error_code: string; 
                message: string; 
            }[]; 
            external_type?: 
                | "pti_card"
                | "brivo_credential"
                | "hid_credential"
                | "visionline_card"
                | "salto_ks_credential"
                | "assa_abloy_vostio_key"
                | "salto_space_key"; 
            external_type_display_name?: string; 
            is_issued?: boolean; 
            is_latest_desired_state_synced_with_provider?: null | boolean; 
            is_managed: true; 
            is_multi_phone_sync_credential?: boolean; 
            is_one_time_use?: boolean; 
            issued_at?: null | string; 
            latest_desired_state_synced_with_provider_at?: null | string; 
            parent_acs_credential_id?: string; 
            starts_at?: string; 
            visionline_metadata?: { 
                auto_join?: boolean; 
                card_function_type: "guest" | "staff"; 
                card_id?: string; 
                common_acs_entrance_ids?: string[]; 
                credential_id?: string; 
                guest_acs_entrance_ids?: string[]; 
                is_valid?: boolean; 
                joiner_acs_credential_ids?: string[]; 
            }; 
            warnings: (
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "waiting_to_be_issued"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "schedule_externally_modified"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "schedule_modified"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "being_deleted"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "unknown_issue_with_acs_credential"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "needs_to_be_reissued"; 
                })[]; 
            workspace_id: string; 
        } | { 
            access_method: "code" | "card" | "mobile_key"; 
            acs_credential_id: string; 
            acs_credential_pool_id?: string; 
            acs_system_id: string; 
            acs_user_id?: string; 
            assa_abloy_vostio_metadata?: { 
                door_names?: string[]; 
                endpoint_id?: string; 
                key_id?: string; 
                key_issuing_request_id?: string; 
                override_guest_acs_entrance_ids?: string[]; 
            }; 
            card_number?: null | string; 
            code?: null | string; 
            created_at: string; 
            display_name: string; 
            ends_at?: string; 
            errors: { 
                error_code: string; 
                message: string; 
            }[]; 
            external_type?: 
                | "pti_card"
                | "brivo_credential"
                | "hid_credential"
                | "visionline_card"
                | "salto_ks_credential"
                | "assa_abloy_vostio_key"
                | "salto_space_key"; 
            external_type_display_name?: string; 
            is_issued?: boolean; 
            is_latest_desired_state_synced_with_provider?: null | boolean; 
            is_managed: false; 
            is_multi_phone_sync_credential?: boolean; 
            is_one_time_use?: boolean; 
            issued_at?: null | string; 
            latest_desired_state_synced_with_provider_at?: null | string; 
            parent_acs_credential_id?: string; 
            starts_at?: string; 
            visionline_metadata?: { 
                auto_join?: boolean; 
                card_function_type: "guest" | "staff"; 
                card_id?: string; 
                common_acs_entrance_ids?: string[]; 
                credential_id?: string; 
                guest_acs_entrance_ids?: string[]; 
                is_valid?: boolean; 
                joiner_acs_credential_ids?: string[]; 
            }; 
            warnings: (
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "waiting_to_be_issued"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "schedule_externally_modified"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "schedule_modified"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "being_deleted"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "unknown_issue_with_acs_credential"; 
                }
                | { 
                    created_at: string; 
                    message: string; 
                    warning_code: "needs_to_be_reissued"; 
                })[]; 
            workspace_id: string; 
        }; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "ENCODE_CREDENTIAL"; 
        error: 
            | { 
                message: string; 
                type: "uncategorized_error"; 
            }
            | { 
                message: string; 
                type: "action_attempt_expired"; 
            }
            | { 
                message: string; 
                type: "no_credential_on_encoder"; 
            }
            | { 
                message: string; 
                type: "incompatible_card_format"; 
            }
            | { 
                message: string; 
                type: "credential_cannot_be_reissued"; 
            }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "RESET_SANDBOX_WORKSPACE"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "RESET_SANDBOX_WORKSPACE"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "RESET_SANDBOX_WORKSPACE"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SET_FAN_MODE"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SET_FAN_MODE"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SET_FAN_MODE"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SET_HVAC_MODE"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SET_HVAC_MODE"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SET_HVAC_MODE"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "ACTIVATE_CLIMATE_PRESET"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "ACTIVATE_CLIMATE_PRESET"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "ACTIVATE_CLIMATE_PRESET"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SYNC_ACCESS_CODES"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SYNC_ACCESS_CODES"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "SYNC_ACCESS_CODES"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "CREATE_ACCESS_CODE"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "CREATE_ACCESS_CODE"; 
        error: null; 
        result: { 
            access_code?: any; 
        }; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "CREATE_ACCESS_CODE"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "DELETE_ACCESS_CODE"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "DELETE_ACCESS_CODE"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "DELETE_ACCESS_CODE"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UPDATE_ACCESS_CODE"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UPDATE_ACCESS_CODE"; 
        error: null; 
        result: { 
            access_code?: any; 
        }; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UPDATE_ACCESS_CODE"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "CREATE_NOISE_THRESHOLD"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "CREATE_NOISE_THRESHOLD"; 
        error: null; 
        result: { 
            noise_threshold?: any; 
        }; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "CREATE_NOISE_THRESHOLD"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "DELETE_NOISE_THRESHOLD"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "DELETE_NOISE_THRESHOLD"; 
        error: null; 
        result: {}; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "DELETE_NOISE_THRESHOLD"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UPDATE_NOISE_THRESHOLD"; 
        error: null; 
        result: null; 
        status: "pending"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UPDATE_NOISE_THRESHOLD"; 
        error: null; 
        result: { 
            noise_threshold?: any; 
        }; 
        status: "success"; 
    }
    | { 
        action_attempt_id: string; 
        action_type: "UPDATE_NOISE_THRESHOLD"; 
        error: { 
            message: string; 
            type: string; 
        }; 
        result: null; 
        status: "error"; 
    }