1import { CodeBlock } from '../utils/commonCodeMod'; 2interface InsertContentFunctionOptions { 3 position: 'head' | 'tail' | 'tailBeforeLastReturn'; 4 indent?: number; 5} 6/** 7 * Add Objective-C import 8 * @param source source contents 9 * @param imports array of imports, e.g. ['<Foundation/Foundation.h>'] 10 * @returns updated contents 11 */ 12export declare function addObjcImports(source: string, imports: string[]): string; 13/** 14 * Find code block of Objective-C interface or implementation 15 * 16 * @param contents source contents 17 * @param declaration interface/implementation, e.g. '@interface Foo' 18 * @returns found CodeBlock, or null if not found 19 */ 20export declare function findObjcInterfaceCodeBlock(contents: string, declaration: string): CodeBlock | null; 21/** 22 * Find code block of Objective-C function without declaration, will return only {} block 23 * 24 * @param contents source contents 25 * @param selector function selector, e.g. 'doSomething:withSomeValue:' 26 * @returns found CodeBlock, or null if not found. 27 */ 28export declare function findObjcFunctionCodeBlock(contents: string, selector: string): CodeBlock | null; 29/** 30 * Insert contents to the Objective-C function block 31 * 32 * @param srcContents source contents 33 * @param selector function selector, e.g. 'doSomething:withSomeValue:' 34 * @param insertion code to insert 35 * @param options insertion options 36 * @returns updated contents 37 */ 38export declare function insertContentsInsideObjcFunctionBlock(srcContents: string, selector: string, insertion: string, options: InsertContentFunctionOptions): string; 39/** 40 * Insert contents to the Objective-C interface/implementation block 41 * 42 * @param srcContents source contents 43 * @param declaration interface/implementation, e.g. '@interface Foo' 44 * @param insertion code to insert 45 * @param options insertion options 46 * @returns updated contents 47 */ 48export declare function insertContentsInsideObjcInterfaceBlock(srcContents: string, declaration: string, insertion: string, options: { 49 position: 'head' | 'tail'; 50}): string; 51/** 52 * Find code block of Swift function without declaration, will return only {} block 53 * 54 * @param contents source contents 55 * @param selector function selector, e.g. 'doSomething(_:withSomeValue:)' 56 * @returns found CodeBlock, or null if not found. 57 */ 58export declare function findSwiftFunctionCodeBlock(contents: string, selector: string): CodeBlock | null; 59/** 60 * Insert contents to the swift class block 61 * 62 * @param srcContents source contents 63 * @param declaration class/extension declaration, e.g. 'class AppDelegate' 64 * @param insertion code to append 65 * @param options insertion options 66 * @returns updated contents 67 */ 68export declare function insertContentsInsideSwiftClassBlock(srcContents: string, declaration: string, insertion: string, options: { 69 position: 'head' | 'tail'; 70}): string; 71/** 72 * Insert contents to the Swift function block 73 * 74 * @param srcContents source contents 75 * @param selector function selector, e.g. 'doSomething:withSomeValue:' 76 * @param insertion code to insert 77 * @param options insertion options 78 * @returns updated contents 79 */ 80export declare function insertContentsInsideSwiftFunctionBlock(srcContents: string, selector: string, insertion: string, options: InsertContentFunctionOptions): string; 81export {}; 82