- Client detail: Subscription/Invoices/Payments tabs now fully functional - Payments: proper list with today's total + live search prefill from client - Record payment: debounced live search, reference required for non-cash - Remittances: detail screen with included payments breakdown - Tickets: status filter chips + create button, new ticket with categories - Installations: tab now visible with list + confirm flow - Fix: remove duplicate @react-navigation/elements causing Metro asset error - Fix: metro.config.js asset resolution from node_modules
40 lines
1.1 KiB
TypeScript
40 lines
1.1 KiB
TypeScript
declare module 'expo-image-picker' {
|
|
export function requestCameraPermissionsAsync(): Promise<{ status: string }>;
|
|
export function launchCameraAsync(options?: {
|
|
quality?: number;
|
|
base64?: boolean;
|
|
allowsEditing?: boolean;
|
|
}): Promise<{ canceled: boolean; assets: Array<{ uri: string; base64?: string }> }>;
|
|
export function launchImageLibraryAsync(options?: {
|
|
quality?: number;
|
|
base64?: boolean;
|
|
mediaTypes?: string;
|
|
}): Promise<{ canceled: boolean; assets: Array<{ uri: string; base64?: string }> }>;
|
|
}
|
|
|
|
declare module 'expo-location' {
|
|
export enum Accuracy {
|
|
Lowest = 1,
|
|
Low = 2,
|
|
Balanced = 3,
|
|
High = 4,
|
|
Highest = 5,
|
|
BestForNavigation = 6,
|
|
}
|
|
export function requestForegroundPermissionsAsync(): Promise<{ status: string }>;
|
|
export function getCurrentPositionAsync(options?: {
|
|
accuracy?: Accuracy;
|
|
}): Promise<{
|
|
coords: {
|
|
latitude: number;
|
|
longitude: number;
|
|
altitude: number | null;
|
|
accuracy: number;
|
|
altitudeAccuracy: number | null;
|
|
heading: number | null;
|
|
speed: number | null;
|
|
};
|
|
timestamp: number;
|
|
}>;
|
|
}
|