// @generated
// -----------------------------------------------------------------------------
// Auto-generated by tools/c_api_gen/auto_simple_bindings.py.
// DO NOT EDIT THIS FILE DIRECTLY.
// Sources:
//   - include/rocksdb/compaction_job_stats.h
//   - include/rocksdb/listener.h
//   - include/rocksdb/table_properties.h
//   - tools/c_api_gen/auto_simple_bindings_blocklist.json
//   - include/rocksdb/c.h
//   - tools/c_api_gen/c_base.cc
// -----------------------------------------------------------------------------

// To regenerate this file:
//   python3 tools/c_api_gen/auto_simple_bindings.py

// Output group: Auto-discovered metadata view structs simple

/* TableProperties */

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_orig_file_number(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_data_size(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_uncompressed_data_size(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_index_size(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_index_partitions(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_top_level_index_size(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_index_key_is_user_key(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_index_value_is_delta_encoded(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_udi_is_primary_index(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_filter_size(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_raw_key_size(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_raw_value_size(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_num_data_blocks(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_num_data_blocks_compression_rejected(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_num_data_blocks_compression_bypassed(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_num_uniform_blocks(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_num_entries(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_num_filter_entries(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_num_deletions(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_num_merge_operands(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_num_range_deletions(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_format_version(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_fixed_key_len(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_column_family_id(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_creation_time(const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_oldest_key_time(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_newest_key_time(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_file_creation_time(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_slow_compression_estimated_data_size(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_fast_compression_estimated_data_size(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_external_sst_file_global_seqno_offset(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_tail_start_offset(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_user_defined_timestamps_persisted(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_key_largest_seqno(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_table_properties_key_smallest_seqno(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_data_block_restart_interval(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_index_block_restart_interval(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_table_properties_separate_key_value_in_data_block(
    const rocksdb_table_properties_t* props);

extern ROCKSDB_LIBRARY_API const char* rocksdb_table_properties_db_id(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char* rocksdb_table_properties_db_session_id(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char* rocksdb_table_properties_db_host_id(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_column_family_name(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_filter_policy_name(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char* rocksdb_table_properties_comparator_name(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_merge_operator_name(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_prefix_extractor_name(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_property_collectors_names(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_compression_name(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_compression_options(
    const rocksdb_table_properties_t* props, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_table_properties_seqno_to_time_mapping(
    const rocksdb_table_properties_t* props, size_t* size);

/* CompactionJobStats */

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_compaction_job_stats_elapsed_micros(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_compaction_job_stats_cpu_micros(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API unsigned char
rocksdb_compaction_job_stats_has_accurate_num_input_records(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_input_records(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_compaction_job_stats_num_blobs_read(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t rocksdb_compaction_job_stats_num_input_files(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t
rocksdb_compaction_job_stats_num_input_files_trivially_moved(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t
rocksdb_compaction_job_stats_num_input_files_at_output_level(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t
rocksdb_compaction_job_stats_num_filtered_input_files(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t
rocksdb_compaction_job_stats_num_filtered_input_files_at_output_level(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_output_records(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t rocksdb_compaction_job_stats_num_output_files(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API size_t
rocksdb_compaction_job_stats_num_output_files_blob(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API unsigned char
rocksdb_compaction_job_stats_is_full_compaction(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API unsigned char
rocksdb_compaction_job_stats_is_manual_compaction(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API unsigned char
rocksdb_compaction_job_stats_is_remote_compaction(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_input_bytes(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_blob_bytes_read(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_output_bytes(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_output_bytes_blob(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_skipped_input_bytes(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_records_replaced(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_input_raw_key_bytes(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_total_input_raw_value_bytes(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_input_deletion_records(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_expired_deletion_records(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_corrupt_keys(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_file_write_nanos(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_file_range_sync_nanos(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_file_fsync_nanos(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_file_prepare_write_nanos(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_compaction_job_stats_smallest_output_key_prefix(
    const rocksdb_compaction_job_stats_t* stats, size_t* size);

extern ROCKSDB_LIBRARY_API const char*
rocksdb_compaction_job_stats_largest_output_key_prefix(
    const rocksdb_compaction_job_stats_t* stats, size_t* size);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_single_del_fallthru(
    const rocksdb_compaction_job_stats_t* stats);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_job_stats_num_single_del_mismatch(
    const rocksdb_compaction_job_stats_t* stats);

/* CompactionFileInfo */

extern ROCKSDB_LIBRARY_API int rocksdb_compaction_file_info_level(
    const rocksdb_compaction_file_info_t* info);

extern ROCKSDB_LIBRARY_API uint64_t rocksdb_compaction_file_info_file_number(
    const rocksdb_compaction_file_info_t* info);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_compaction_file_info_oldest_blob_file_number(
    const rocksdb_compaction_file_info_t* info);

/* BlobFileAdditionInfo */

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_blob_file_addition_info_total_blob_count(
    const rocksdb_blob_file_addition_info_t* info);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_blob_file_addition_info_total_blob_bytes(
    const rocksdb_blob_file_addition_info_t* info);

/* BlobFileGarbageInfo */

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_blob_file_garbage_info_garbage_blob_count(
    const rocksdb_blob_file_garbage_info_t* info);

extern ROCKSDB_LIBRARY_API uint64_t
rocksdb_blob_file_garbage_info_garbage_blob_bytes(
    const rocksdb_blob_file_garbage_info_t* info);
