'use strict' const { createJsonExportDualHealMixin } = require('pearcord-json-export-mixin') const memberJsonMixin = createJsonExportDualHealMixin({ gossipEntries: [ { method: '_shouldGossipMemberRosterJson', keysField: '_memberRosterRegistryJsonGossipKeys', initMethod: '_initMemberRosterJsonMixinState' }, { method: '_shouldGossipModerationTimeoutExportJson', gossipHashPrefix: 'effective:', keysField: '_moderationTimeoutRegistryJsonGossipKeys', initMethod: '_initModerationTimeoutJsonMixinState' }, ], heals: [ { watermarkField: '_memberJsonHealWatermark', shouldGossipMethod: '_shouldGossipMemberRosterJson', healMethod: '_healMemberRosterExportCursorOnPartition', spanKind: 'member.json', healContext: 'heal.roster', countField: 'guildMemberJsonCount', bridgeKind: 'member.json', listExportsMethod: 'listMemberRosterJsonExports' }, { watermarkField: '_moderationTimeoutJsonHealWatermark', shouldGossipMethod: '_shouldGossipModerationTimeoutExportJson', healMethod: '_healModerationTimeoutExportCursorOnPartition', spanKind: 'member.json', healContext: 'heal.timeout', countField: 'guildMemberJsonCount', bridgeKind: 'member.json', listExportsMethod: 'listModerationTimeoutExportJsonExports' } ] }) module.exports = { memberJsonMixin }