#pragma once

typedef enum {
    FSEARCH_DATABASE_SCAN_REASON_UNKNOWN = 0,
    FSEARCH_DATABASE_SCAN_REASON_MANUAL = 1,
    FSEARCH_DATABASE_SCAN_REASON_SCHEDULED = 2,
    FSEARCH_DATABASE_SCAN_REASON_LAUNCH = 3,
    FSEARCH_DATABASE_SCAN_REASON_MONITOR_DROP = 4,
    FSEARCH_DATABASE_SCAN_REASON_CONFIG_CHANGE = 5,
    NUM_FSEARCH_DATABASE_SCAN_REASONS
} FsearchDatabaseScanReason;

typedef enum {
    FSEARCH_DATABASE_REBUILD_UNKNOWN = 0,
    FSEARCH_DATABASE_REBUILD_FRESH_INSTALL = 1,
    FSEARCH_DATABASE_REBUILD_FORMAT_UPGRADE = 2,
    FSEARCH_DATABASE_REBUILD_CORRUPTION_RECOVERY = 3,
    FSEARCH_DATABASE_REBUILD_USER_CLEARED = 4,
    NUM_DATABASE_REBUILD_REASONS
} FsearchDatabaseRebuildReason;