resume-anonymizer
Version:
A flexible NPM package for anonymizing resumes to reduce bias in hiring
93 lines • 2.17 kB
TypeScript
export interface AnonymizationOptions {
hide?: {
name?: boolean;
contact?: boolean;
photo?: boolean;
companyNames?: boolean;
education?: boolean;
references?: boolean;
locations?: boolean;
otherPII?: boolean;
};
pseudonym?: {
name?: string;
company?: string;
person?: string;
education?: string;
};
mode?: 'minimal' | 'moderate' | 'strict';
rewordingLevel?: 'none' | 'light' | 'medium' | 'heavy';
verify?: boolean;
reportChanges?: boolean;
useAI?: boolean;
aiProvider?: {
apiKey?: string;
model?: string;
};
}
export interface ChangeLog {
name?: {
original: string;
replacedWith: string;
};
companies?: Array<{
original: string;
replacedWith: string;
}>;
emailRemoved?: string | string[];
phoneRemoved?: string | string[];
addressRemoved?: string | string[];
references?: Array<{
original: string;
replacedWith: string;
}>;
educationInstitutions?: Array<{
original: string;
replacedWith: string;
}>;
locations?: Array<{
original: string;
replacedWith: string;
}>;
}
export interface AnonymizationResult {
anonymizedResume: any;
changes: ChangeLog;
}
export interface Resume {
name?: string;
email?: string;
phone?: string;
address?: string;
profiles?: Array<{
network?: string;
username?: string;
url?: string;
}>;
summary?: string;
work?: Array<{
company?: string;
position?: string;
startDate?: string;
endDate?: string;
summary?: string;
highlights?: string[];
}>;
education?: Array<{
institution?: string;
area?: string;
studyType?: string;
startDate?: string;
endDate?: string;
}>;
skills?: Array<{
name?: string;
keywords?: string[];
}>;
references?: Array<{
name?: string;
reference?: string;
}>;
[key: string]: any;
}
//# sourceMappingURL=types.d.ts.map