in src/objc-import-utils.ts [307:328]
export function importForAttribute(
typeName: string,
underlyingType: string | null,
libraryTypeIsDefinedIn: string | null,
fileTypeIsDefinedIn: string | null,
objectLibrary: string | null,
isPublic: boolean,
): ObjC.Import {
const builtInImport = typeDefinitionImportForKnownSystemType(typeName);
if (builtInImport != null) {
return builtInImport;
}
const requiresPublicImport = isPublic || underlyingType != 'NSObject';
return {
library:
libraryTypeIsDefinedIn != null ? libraryTypeIsDefinedIn : objectLibrary,
file: `${fileTypeIsDefinedIn != null ? fileTypeIsDefinedIn : typeName}.h`,
isPublic: requiresPublicImport,
requiresCPlusPlus: false,
};
}