/** * French profanity dictionary. * Covers metropolitan French, with light coverage of Québécois and * Franco-Arabic (banlieue) slang. * * Normalization notes: * - The normalizer already strips French diacritics (é → e, à → a, ç → c, * ê → e, ï → i, ô → o, etc.). For belt-and-suspenders, accent-free forms * are also listed in `normalized` so that entries survive any future * normalizer changes. * - Short high-collision roots (`con`, `pute`, `bite`, `cul`) are ALL gated * with `allowPartialMatch: false`. They are substrings of hundreds of * benign French words (concert, député, habite, culture, ...). The * false-positive safelist in matcher.ts covers the most common collisions * for fuzzy-match safety as well. * * Sources: * - LDNOOBW `fr` list (CC-BY-4.0) — see NOTICES/LDNOOBW.md. * - Entries with known false-positive conflicts (e.g. `baiser` = "to kiss", * `péter` = "to break", `tapette` = "flyswatter", `ménage à trois` as * Anglophone idiom, `folle` = "crazy (fem)") were deliberately excluded. */ import type { DictionaryEntry, PhraseEntry } from '../types.js'; export declare const FR_WORDS: DictionaryEntry[]; export declare const FR_PHRASES: PhraseEntry[];